资源描述
专业硕士学位论文
基于RFID的服装销售系统的设计与实现
Design and Implementation of Costume Business System Based on RFID
作者:薛晓朕
导师:陈旭东
北京交通大学
2010年6月
学位论文版权使用授权书
本学位论文作者完全了解北京交通大学有关保留、使用学位论文的规定。特授权北京交通大学可以将学位论文的全部或部分内容编入有关数据库进行检索,提供阅览服务,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交论文的复印件和磁盘。
(保密的学位论文在解密后适用本授权说明)
学位论文作者签名: 导师签名:
签字日期: 年 月 日 签字日期: 年 月 日
中图分类号:TP319
UDC:
学校代码:10004
密级:公开
北京交通大学
专业硕士学位论文
基于RFID的服装销售系统的设计与实现
Design and Implementation of Costume Business System Based on RFID
作者姓名:薛 晓 朕 学 号:07122281
导师姓名:陈 旭 东 职 称:高级工程师
工程领域:软件工程 学位级别:硕士
北京交通大学
2010年6月
致谢
我的论文是在陈旭东老师的辛勤指导下完成的,在此特别要感谢陈老师的所有悉心指导。他对我硕士论文的指导工作非常重视、细心,在文章的细节方面也严格要求;他为我提供了大量的参考资料,并抽出很多时间与我一起探讨问题,提出很多建设性的思路与方法。在他的指导下我才得以顺利的完成了这篇论文。陈老师严谨的治学态度、刻苦勤奋的钻研精神以及对科学研究的执着追求对我影响颇深,将会时刻激励我在以后的研究工作中努力奋进,在此谨致以最崇高的敬意和最诚挚的感谢。
同时感谢吴文钦先生与“幻境湾网络科技(北京)有限公司”。本论文的许多成果得益于公司提供了良好的研究环境、实验条件的同事之间的合作与讨论。在我的课题研究和设计期间,得到了吴文钦先生的无私帮助。特别是在设计和调试硬件系统的过程中投入了很多的精力,本论文的完成和他的辛勤指导是分不开的。
我还要感谢所有关心、帮助我的老师和同学。特别是姜文广,李润杰,余涛等同学,在我研究课题及写论文的阶段给了我各种各样的关怀和帮助,在此一并致谢。
最后还要真诚的感谢我的父母、家人对我无私的支持,24年来他们为了我的成长付出了无数的心血,衷心感谢!
中文摘要
摘要:
无线射频识别技术(RFID)是一种应用越来越广泛的自动识别技术,其优点在于非接触读取数据,可以方便地完成数据的自动采集(识别)。目前的服装销售行业中,服装标识具有信息量大、内容繁杂等特点,人工输入数据存在速度慢、效率低、错误率高、与客户交互性差等缺点。为了适应现代化服装企业大规模生产和精准销售的需求,论文提出了基于 RFID的服装销售系统,将服装的基本标识信息存储在RFID标签中,实现了WEB环境下对服装信息管理与展示。
论文分析了基于RFID技术的服装销售系统的研究背景和意义;介绍了RFID中间件软件的概念、特点以及对RFID中间件软件的二次开发过程。通过对服装销售行业的业务分析,完成了服装销售系统的功能模块划分、应用流程和系统框架设计。并结合软件工程的思想,以实际产品开发过程的角度,从需求分析、设计到实现详细介绍了论文完成的两个子系统:“智能配衣子系统”和“库存管理子系统”。最后,论文完成了整个服装销售系统的测试、部署与运维工作。
论文所设计的服装销售系统已经应用于实际,并已申请了专利。
关键词:RFID、RFID中间件、服装销售、信息管理、服装展示
分类号:
ABSTRACT
ABSTRACT:
Radio Frequency Identification (RFID) is an increasingly widespread and applied technology of automatic identification. Its advantage is non-contact data reading, and it can easily realize automatic data acquisition (identification). In current business of costume industry, identification of costume has features such as large amount of information, multifarious contents and so on; meanwhile manual method of data-inputting has a lot of shortcomings such as slow speed, low efficiency, high error rate, and poor interaction with customers. In order to meet the demand of large scale production and precise sales in modern enterprise, this thesis proposes the Costume Business System based on RFID. The system stores basic information in the RFID tag, so as to realize the information management and exhibition in WEB environment.
This thesis analyzes the research background and significance of Costume Business System based on RFID, and then introduces RFID Middleware’s concept, characteristics and the process of its secondary development. Through the analysis of business in costume industry, this thesis completes the division of system function module, the design of application process and system architecture. In the view of actual development process in software engineering, from requirement analysis, design and realization, this thesis comprehensively demonstrates two sub-systems: “Intelligent Costume Matching Subsystem” and “Storage Management Subsystem”. Finally this thesis completes the test, deployment and maintenance work of the system.
The Costume Business System designed in this thesis has been applied into practice, and has been applied for a patent.
KEYWORDS:RFID, RFID Middleware, costume business, information management, costume show
CLASSNO:
目录
中文摘要 iii
ABSTRACT iv
1 绪论 1
1.1 论文意义 1
1.1.1 RFID发展 1
1.1.2 服装销售现状 2
1.2 论文背景 2
1.3 论文组织 3
2 RFID中间件 5
2.1 RFID中间件概念 5
2.2 RFID中间件的特点 5
2.3 RFlD中间件架构分类 6
2.4 RFlD中间件的功能 7
2.5 RFlD中间件的二次开发 8
2.5.1 可视化配置读写器管理模块 8
2.5.2 创建socket类通讯模块 10
3 系统总体需求与设计 13
3.1 模块划分 13
3.2 应用流程 14
3.3 物理框架 16
3.4 软件框架 18
4 智能配衣子系统的设计与实现 19
4.1 需求分析 19
4.1.1 功能描述 19
4.1.2 用例描述 19
4.2 设计 21
4.2.1 数据库设计 21
4.2.2 流程设计 23
4.3 实现 24
4.3.1 功能实现 24
4.3.2 流程实现 28
4.3.3 展示 29
5 库存管理子系统的设计与实现 31
5.1 需求分析 31
5.1.1 功能描述 31
5.1.2 用例描述 32
5.2 设计 34
5.2.1 整体设计 35
5.2.2 数据库设计 36
5.2.3 流程设计 37
5.3 实现 38
5.3.1 功能实现 38
5.3.2 流程实现 43
5.3.3 展示 44
6 测试与运维 45
6.1 系统部署 45
6.1.1 基本配置 45
6.1.2 Web服务器配置 45
6.1.3 系统部署方法 46
6.2 系统测试 46
6.2.1 功能测试 46
6.2.2 性能测试 47
6.3 系统运维 48
6.3.1 系统安全 48
6.3.2 系统监控 49
7 总结与展望 51
7.1 论文总结 51
7.2 研究展望 51
参考文献 53
作者简历 55
独创性声明 56
学位论文数据集 57
1 绪论
1.1 论文意义
1.1.1 RFID发展
射频识别 (RFID,即Radio Frequency Identification) 是近几年发展起来的一项新的自动识别技术。它集计算机技术,软件工程技术,无线数据传输技术,信息采集处理技术,网络数据通信技术等多学科综合应用为一体,可对各类物体、设备、车辆及人员的在不同状态(移动、静止)下的实现自动识别与信息处理[1]。
射频系统的优点众多,如识别距离远,识别非接触性,识别卡具有读写能力,可携带大量数据,同时具有难以伪造和智能性高,可识别高速运动物体,可同时识别多个射频标签,射频标签不怕油渍、灰尘污染等恶劣的环境,等等特点。正是由于它的大量优点,尤其是RFID系统的应答器和阅读器之间不用接触就可完成识别,它可在广泛的场合中得到应用。
随着大规模集成电路技术的成熟,RFID系统的体积大大缩小,现在己经进入了实用化的阶段[2]。RFID技术在下列应用中有较好的发展前景:商品防伪、证件防伪、生产流水线管理、仓储管理、贵重物品防盗、图书管理、租赁产品管理、航空包裹管理、门禁系统、畜牧管理、票证等;在其它对识别准确性要求特别高的领域,RFID技术也很适用,例如:血液管理、婴儿防错、马拉松比赛、汽车比赛、药品和医疗器械、气体产品管理、工业洗衣店管理、容器跟踪(如啤酒桶、液化气瓶)和垃圾管理等等。这些领域仅仅是RFID技术应用的一部分,虽然具体的方案还有待更详细的研究,但是这些应用的可能性和可行性是不容置疑的,RFID将是未来一个新的经济增长点[3]。
在信息社会,人们对于各种信息的获取都要求快速而准确,所以在不久的将来RFID技术将同其它识别技术一样深入并改善我们的生活。目前在国外,RFID应用已经非常广泛。在短距离的射频标签识别中正逐渐替代条码,例如用在工厂的流水线上跟踪物体;长距离的射频标签识别多用于交通上,如自动收费或识别车辆身份等。在服装信息管理与展示的方面,美国和香港都已经有成熟系统。如2007,Paxar公司, Motorola 公司,InfoSys公司联合在美国Miami 展出了基于RFID的店内智能试衣和在线电子商务(e-commerce)结合的无缝服务。
RFID技术在中国处于一个RFID技术在中国处于一个起步的阶段,但是它的发展潜力是巨大的,它的前景非常诱人。本论文的研究目标就在于在中国大陆地区首次把RFID技术引入到服装销售领域。
1.1.2 服装销售现状
在服装销售行业,记录服装的信息依赖于服装标识,服装标识的内容一般包括服装的名称、制造者的名称及地址、服装型号、成分、洗涤方法、执行标准编号、质量等级合格证等,信息量大而且内容繁杂。目前服装厂一般采用以下几种方式对服装进行标识:
1) 在衣领、袖口等部位缝制商标,标注服装的品牌。
2) 在领窝、侧缝处缝制标识注明服装的规格、尺寸,方便消费者按尺码选择合适的服装。
3) 在比较明显的地方挂有吊牌,对服装的品牌、成分、规格以及是否检测合格进行说明。
4) 在衣服夹缝中缝有标识,指导消费者保养衣服。
5) 用条形码跟踪服装的流通等等[4]。
基于上述的标识方法,服装店在服装的信息管理方面一般以人工方式实施服装店内部的管理,依赖于以纸质文件为基础的系统来标识、记录、追踪货物的进出。这些标签在生产过程中增加了生产工序,而且经常采用消费者难于理解的专业图案,难以被消费者接受。同时,由于各个环节的统计数据的时间滞后性,造成统计数据在时序上的混乱,无法进行整体的数据分析以给管理决策提供真实、可靠的依据。在现代化服装销售行业中,手工方式既费时、费力,又容易产生错误。企业为了满足市场需求多元化的要求,生产制造从过去的大批量、单调品种的模式向小批量、多品种的模式转移,给传统的手工方式带来了更大的压力。
另一方面,在服装在专卖店销售的层面上,传统的服装行业销售方式如:服装基本信息介绍、店员介绍、推荐、店内道具模特展示、季节服装杂志宣传等在非打扰性、智能性、交互性上弊端已日趋明显。中国城市居民接触信息的渠道越来越趋向于网络和视频媒体。顾客需要多媒体专业性的解说衣服的搭配、质量和做工,顾客需要在有充分信息获得的条件下的有更多的自主选择权,顾客需要永远对交互性的试衣方式充满新鲜感。当前是一个融合通信的时代,成功的商家必须要从新的沟通渠道把握住消费者,和消费者进行全面的沟通,才能够立于不败之地[5]。
1.2 论文背景
论文选题来源于作者参与的幻境湾网络科技(北京)有限公司的“智能服装销售系统”的研发。针对目前服装信息标识方法的不足,论文提出一种基于RFID技术的服装标识方法,并在此基础上开发基于RFID服装销售系统。该方法通过把RFID标签嵌入服装内部作为数据载体来识别、采集、管理、展示服装的资料。将RFID标签置入服装以后,它们一直存在于该服装的生产和销售整个过程中,从服装在生产到服装成品入库直至被摆上货架和被出售,整个过程都可以通过阅读器的扫瞄对服装进行监控,配合以软件系统的辅助管理和展示,就可以生成详尽的记录。不论针对服装销售的管理人员还是服装购买的消费者,系统可改善目前服装销售中存在的缺陷和不足。
“智能服装销售系统”在基本的服装信息管理方面,通过RFID识别技术与web后台信息管理交互,实现仓储、物流的信息智能化管理。既加快了出入库和拣货、送货速度,提高库存空间利用率,减少因盗窃保管不善造成的损失,同时也降低了劳动力成本,并有效做到了防伪打假。
“智能服装销售系统”在用户体验方面,实现了交互式精准服装介绍,智能服装搭配推荐,服装试穿效果显示和比较,以及分享服装点评等功能。而且店内试衣效果展示可以直接相联开放互联网平台(评论,购买,导购等多种功能结合的电子商务网站)。该系统增强了第一用户体验,从而压缩服装厂商到消费者的沟通环节,加快反馈信息流通速度。提高新品出货速度和销售量。
“智能服装销售系统”是中国大陆第一套完全自主知识产权的品牌服装店内智能试衣系统,并且取得了已保护的完全知识产权。通过跟踪分析国际(美、欧、日、韩和香港等发达地区)同类“智能服装销售系统”的先进技术,在2008年底研发出中国第一套服装店内智能试衣系统; 2009年加入了受知识产权保护的“互联网共享试衣效果媒体资料和评论”功能;从2010年开始,产品已经陆续在国内知名服装厂家和装卖店开始试用;至今,该产品依然在不停地集成更新的技术和新功能。笔者全程参与了系统v1.0、 v2.0两个版本的设计与开发过程。
1.3 论文组织
论文针对“智能服装销售系统”的研发过程,完成了服装销售系统的设计与实现。论文组织分为以下几个章节:
第一章 绪论。主要介绍了论文的意义(包括技术意义与应用意义),课题国外国内发展现状,论文背景,和论文主要研究的内容。
第二章 RFID中间件介绍与设计。首先介绍了RFID中间件相关知识,包括RFID中间件的特点、分类、和功能。然后详细介绍了针对本系统对RFID中间件产品的二次开发的两个模块的具体实现。
第三章 系统总体需求与设计。针对“智能服装销售系统”的现实意义,从软件开发与实际应用的角度分别介绍了系统模块的划分,系统在实际中的应用流程,系统的物理框架,系统的软件框架。
第四章 智能配衣子系统的设计与实现。从软件开发的角度详细介绍了子系统全部功能的详细设计与实现。从需求、分析、设计与实现,详细阐述了各个功能点的完整开发流程。
第五章 库存管理子系统的设计与实现。从软件开发的角度详细介绍了子系统全部功能的详细设计与实现。从需求、分析、设计与实现,详细阐述了各个功能点的完整开发流程。
第六章 测试与运维。介绍了整个系统的部署环境,功能与性能测试,与运行维护情况。
第七章 总结与展望。本章主要是论文和系统的总结,并阐述了下一步计划的工作内容。
2 RFID中间件
2.1 RFID中间件概念
为了解决分布异构问题,人们提出了中间件(Middleware)的概念[6]。中间件是位于平台(硬件和操作系统)和应用之间的通用服务,这些服务具有标准的程序接口和协议。针对不同的操作系统和硬件平台,可以有符合接口和协议规范的多种实现。对于应用软件开发,中间件远比操作系统和网络服务更为重要,中间件提供的程序接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护中的重大投资。中间件具有以下一些关键特性:
1)屏蔽软硬件平台的异构性;
2)使得所构造的分布式系统有可伸缩性;
3)为最终用户提供一定程度的分布透明性;
4)改善应用系统的服务质量;提高系统的可用性、可靠性、可维护性;
5)增强系统的性能和用户友好;
Forrester Research对RFID中间件的定义表述是:RFID中间件是介于RFID读写器(或其它自动识别设备)与应用系统之间的、用于管理和分发RFID数据的平台[7]。
RFID中间件在RFID读写器和应用程序之间起到中介作用,在应用程序端使用中间件所提供的一组通用的应用程序接口(API),即能连接到RFID读写器实现RFID标签数据的读取。即使存储RFID标签信息的数据库软件或后端应用程序发生化,或增加RFID读写器的种类时,应用端不需修改也能处理,省去多对多连接结构及其维护的复杂性问题。
2.2 RFID中间件的特点
RFID中间件具有如下特点:
1)独立于架构(Insulation Infrastructure)RFID中间件独立并介于RFID读写器与后端应用程序之间,能够与多个RFID读写器以及多个后端应用程序连接,以减轻架构与维护的复杂性。
2)数据流(Data Flow)RFID的主要目的在于将实体对象转换为信息环境下的虚拟对象,因此数据处理是RFID最重要的功能。RFID中间件具有数据的搜集、过滤、整合与传递等特性,以便将正确的对象信息传到企业后端的应用系统。
3)处理流(Process Flow)RFID中间件采用程序逻辑及存储再转送的功能来提供顺序的消息流,具有数据流设计与管理的能力。
4)标准(Standard)RFID为自动数据采样技术与辨识实体对象的应用。EPC global目前正在研究为各种产品的全球唯一识别号码提出通用标准,即EPC(产品电子编码)。EPC是在供应链系统中,以一串数字来识别一项特定的商品,EPC编码信息存放在RFID标签中,被RFID读写器读出后,即可提供追踪EPC所代表的物品名称及相关信息,并立即识别及分享供应链中的物品数据[8]。
2.3 RFlD中间件架构分类
RFID中间件可以有不同的分类方式。
1)以应用程序为中心
通过RFID Reader厂商提供的API,以Hot Code方式直接编写特定Reader读取数据的Adapter,并传送至后端系统的应用程序或数据库,从而达成与后端系统或服务串接的目的[9]。
2)以架构为中心
随着企业应用系统的复杂度增高,企业无法负荷以Hot Code方式为每个应用程序编写Adapter,同时面对对象标准化等问题,企业可以考虑采用厂商所提供标准规格的RFID中间件。这样一来,即使存储RFID标签数据的数据库软件改由其它软件代替,或读写RFID标签的RFID Reader种类增加等情况发生时,应用端不作修改也能应付[10]。以架构为中心的RFID中间件发展方向为:
a)面向服务架构的RFID中间件:面向服务的体系架构(SOA)的目标就是建立异构环境中的应用互操作与动态集成的标准体系[11]。实现异构平台与应用环境下的应用系统或者业务流程的运行时环境下建模,自动化连接与协同,以自动实现数据的服务化,最大程度地减少数据的服务化中的手工工作,并且结合Web2.0技术实现商业模式的个性化动态创新,让RFID的IT架构变的灵活。
b)基于安全架构的RFID中间件:通过大量的RFID读写器的部署,使人类生活、各种消费活动以及工作行为都将因RFID而更加容易被追踪,为此,飞利浦半导体厂商已经开始在批量生产的RFID芯片上加上“屏蔽”功能[11]。RSA Security也发布了能成功干扰RFID信号的技术“RSA Blocker标签”,通过发射无线频扰乱RFID读写器,让RFID读写器误以为搜集到的是垃圾信息而抛弃掉这些数据,以达到保护消费者隐私权的目的。但是,如何建立起RFID系统的安全体系则是当前RFID中间件以及应用系统的关键问题,Auto—ID Center也正在研究Security机制以配合RFID中间件的工作。可以确信安全性将是RFID中间件未来发展的方向之一。
3)以解决方案为中心
以解决方案为中心的RFID中间件平台,是通过各厂商针对不同应用领域的应用需求提出不同的创新应用解决方案,并通过基于标准化的应用接口来实现前端异构的RFID硬件与后端应用系统平台之间的无缝连接与业务集成。
2.4 RFlD中间件的功能
RFID中间件是一种面向消息的中间件,信息是以消息的形式,从一个程序传送到另一个或多个程序。信息可以以异步的方式传送,传送者不必等待回应。具体的功能如下[12]:
1)数据采集过滤、存储
分布在数据采集现场的RFID读写器,读取电子标签数据时,会产生重复的读取并读取不同种类编码格式的电子标签,需要使用中间件进行过滤、统计、分类、判断、编码解析。如:通过对读写器ID的过滤,可以确定出是分布在数据采集现场哪一个采集点上的读写器,从而判断出持有电子标签的人或物品所在的位置信息。同时根据识读到电子标签的读写器ID的先后次序判断出人的进出状态。通过对重复读取数据的过滤,减少了电子标签数据的冗余、网络的传输负载并提高业务处理的性能。统计的数据类型有:读写器的ID和标签数据,统计处于工作状态的读写器个数。分类的具体数据类型是读写器ID和电子标签数据,把同一个读写器读取的电子标签数据分为一个组,在分类的过程中要判断电子标签的编码类型。同时对数据采集现场采集到的海量数据进行映射与存储,实现信息的共享。
2)业务处理逻辑的设置与管理
实现在系统运行时通过修改业务逻辑配置文件来应对企业业务逻辑的改变。业务逻辑主要进行的是对RFID读写器读取的数据进行与业务相关的数据计算和修改、增加、删除、保存等操作。
3)工作流的配置与管理
在RFID中间件中,一个工作流程对应着一个业务逻辑处理过程,而一个RFID事件触发和引起了一个业务逻辑处理过程,因此,一个具体事件将会产生一个工作流的具体实例。在实际的应用中,某个事件触发并引起执行的工作流实例需要一定的时间,在这个时间内后序事件又触发了更多的实例,形成了一个业务处理队列。
4)报警、事件及读写器状态管理
报警管理主要负责监控读写器设备的状态和事件,事先要设定报警的条件、时间、内容,以及发送的方式,如:电子邮件、手机短信、触发点提示等。报警的产生方式,如:即时,定时等。报警、事件及读写器状态管理保存了这些报警日志,实现了对各企业例外和异常的及时动态配置和管理。
5)消息管理
RFID消息管理主要包括,消息事件的识别、消息中传递的数据格式转换、过滤分配和路由等功能。RFID消息的数据格式转换提供在不同的标准下针对采集到不同格式的数据进行转换,还包括针对控制现场采集到的数据与业务逻辑中使用的数据类型的转换,从而对不同的应用系统之间的信息交换和共享提供了统一的数据。RFID消息的路由的设定是将消息可靠的送往目的地。消息的识别主要对消息的有效性、消息的内容检查或校验,并对消息包装。
6)安全管理
消息代理中间件的安全控制,能识别冒名顶替的消息。对来自接口和数据转换过程中的消息执行身份验证、授权。消息代理中间件有内置的数字签名,是一组利用非对称密钥或对称密钥算法集合,在应用开发中调用这个集合中的算法。
2.5 RFlD中间件的二次开发
在论文实现的服装管理系统中,采用的是江苏瑞福智能科技有限公司RFS-3601中间件产品。针对本系统的特殊业务要求,对其进行了二次开发。二次开发的主要完成两个模块:可视化配置读写器管理;创建socket服务端与应用程序交互RFID数据。
2.5.1 可视化配置读写器管理模块
RFID领域存在许多的协议标准和编码方案。协议标准规定了在不同频段和不同应用领域的RFID应该使用的通信接口[13]。而编码方案用于物品的分类,不同的读写器使用不同的频段和协议,标签使用不同的编码格式和解析方式。在电子标签的生产中,不同的企业生产的电子标签,其编码格式大不相同,在现存的编码标准中,除了在SAVANT结构中,规定了统一的读写器协议标准说明(EPC Reader Protoc01 Standard Version1.1)外,其余的是国家、地区、企业标准。要在现存的标准上制定一个统一的标准,只有借助于RFID中间件平台的整合方案提供一个通道服务来读写来自不同编码格式的RFID电子标签,为每一种读写器提供一种服务。当一个读写设备接入到RFID中间件平台后,读取注册信息中对应的配置,如:读写设备的EPC编码识别号(EPCID)、读标签事件周期(ReadCycletime)、标签中数据的位数(TagdataDigit)、写标签指令(WriteCommand)、写入内容(WriteContend)、写入的扇区号(WriteSector)等,用户可以根据需要修改这些配置信息。配置信息用XML文件描述如下。
<Configuration>
<Parameters>
<Parameter Value="EPCID" Name="urn:epc:id:gid:1.100.1"/>
</Parameters>
<Property>
<Parameter Value="5000" Name="Timeout"/>
<Parameter Value="3" Name="ReadCycletime"/>
<Parameter Value="16" Name="TagdataDigit"/>
<Parameter Value="6A 12 00 78" Name="WriteCommand"/>
<Parameter Value="2321321312" Name="WriteContend"/>
<Parameter Value="3" Name="WriteSector"/>
</Property>
<Developpackage>
<JAR>ASl400.jar</JAR>
</Developpackage>
</Configuration >
这些关键的配置信息,可以根据用户的不同需求更改,然而用户可能不是程序员或软件技术人员,所以并不能完全读懂这些配置文件的,这样,需要开发一个可视化配置的模块。让不懂程序开发的用户自己根据业务需求配置具体的参数。
这个功能模块,为了降低代码的耦合度,分层设计了几个类:显示类ParaJPane, 解析xml文件类 AnalFile, 参数实体类ParaEntity。这样设计的目的是让实体类完成界面与文件的交互: ParaJPane里实现参数的现实,参数来源于实体;AnalFile的方法将文件的参数读到一个实体,并将其封装。其类描述如下:
public class ParJPanel {
JTextField timeout;
……
private ParaEntity paraEntity//xml文件信息对应的实体
public void showData(){}//显示实体信息
public void modify(){}//修改实体,传递参数
}
public class AnalFile {
private ParaEntity paraEntity//xml文件信息对应的实体
public void encodeEntity(){}//将xml文件信息赋予实体
public void encodeFile(){}//实体属性写到xml文件中
}
public class ParaEntity{
各个参数……;
}
首先在读写器参数的显示界面ParJPanel上边,实例化一些JTextField控件配置每一个具体的参数,实例化一些Button来触发事件。showData()方法所起到的作用是给上面已经构造好了的各个控件进行赋值,进而显示文件的具体内容。当整个显示类被实例化后自动调用此方法。在showData方法内调用了参数XML文件的解析类AnalFile,将文件解析后通过数据包装实体ParaEntity得到文件的具体信息。最后通过get方法取得相应的字段的信息,通过set方法给对应的控件赋值。通过这样一个过程完成了对文件详细信息显示的功能。
在ParJPanel类中,modify()方法的作用是修改XML文件的参数。当点击显示面板上的修改按钮时,此方法被调用。方法中首先实例化了一个空的数据包装实体ParaEntity,通过get方法从控件处取得相应的字段的信息,通过set方法给对应的实体内的字段赋值。然后将数据实体整体打包作为参数传递给跟生成文件类AnalFile中的encodeFile方法,覆盖原来的文件。
2.5.2 创建socket类通讯模块
创建socket服务器来发送RFID信息。socket是访问通信使用得最广泛的方法,socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。Socket和ServerSocket类库位于包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。对于不同的通信协议,Socket又分为TCP与UDP 方式。他们特点有很大不同,比如,TCP基于连接而UDP无连接 ;TCP对系统资源的要求较多而UDP少 ;TCP保证数据正确性,UDP可能丢包;TCP保证数据顺序,UDP不保证。考虑到以上特点,对于此系统,由于系统在RFID中间件的控制程序和BS的应用程序之间,只需要传递一个string的字符串,数据流很小,然而精准度要求很高,因此,本系统选择TCP的Socket。服务器Server类图如图2.1:
ClothSocketServer
-ServerSocket server
-Socket client
-BufferedReader in
-PrintWriter out
+ClothSocketServer()
+serverStart ()
+serverEnd ()
+getSring():Sring
图2.1 Socket服务器类图
因为TCP方式的socket第一步就是要建立链接,所以需要server和client两个属性作为服务器方和客户方, 而in和out两个属性则是为了字节流的输入和输出。
在ClothSocketServer构造函数中,通过ServerSocket server=new ServerSocket(5678)创建了端口是5678的服务器端。通过Socket client=new Socket(InetAddress.getLocalHost(),5678)让客户机知道有关服务器的IP地址,对于着一点Java也提供了一个相关的类InetAddress 该对象的实例必须通过它的静态方法来提供,它的静态方法主要提供了得到本机IP 和通过名字或IP直接得到InetAddress的方法。serverStart方法中主要有以下两句:
satrtBufferedReader in=new BufferedReader(new InputStreamReader(server.getInputStream()));
PrintWriter out=new PrintWriter(server.getOutputStream());
建立缓冲并把原始的字节流转变为Unicode可以操作,而原始的字节流来源于Socket的两个方法getInputStream() 和getOutputStream()方法,分别用来得到输入和输出. 最后,在getSring函数中,用String str=in.readLine();就可以得到需要的服装信息ID,即RFID。
3 系统总体需求与设计
3.1 模块划分
在服装销售行业中的,一次完整的业务流程,不外乎包括生产、订购、仓储、物流、销售这几个环节[14]。如图3.1所示:
图3.1服装业务环节图
然而这几个环节共享着同样的数据,这就需要服装标识,服装标识的内容一般包括服装的名称、制造者的名称及地址、服装型号、成分、洗涤方法、执行标准编号、质量等级合格证等[15]。目前服装厂商一般采用多种方式对服装进行标识,这在
展开阅读全文