廖显文+李占利
摘要:对国家珍珠及珍珠制品质量监督检验中心而言,建设珍珠鉴定信息管理及防伪系统能显著提升其信息化水平及服务能力;在该系统建设过程中首先借助UML进行详细需求分析;其次在进行系统架构设计时遵循J2EE规范将系统分为三层,即表现层、中间层及数据存储层;中间层又分为Web层、业务逻辑层、数据访问层和数据持久化层。系统的详细设计又分为用户界面设计、数据库设计和模块设计。最后按分层的设计使用1ava相关技术实现。标签打印机调用及摄像头控件这两个关键模块分别使用EZPL编程语言和COM技术来实现。
关键词:J2EE;鉴定信息管理;防伪;CMM13
广西北海是被认定为中国南珠的原产地,北海是全国最大的海水珍珠集散地和交易中心。珍珠及珍珠制品是广西的重要旅游商品,但近年来假冒伪劣产品屡禁不止,严重影响和制约了珍珠及珍珠制品的生产。国家珍珠及珍珠制品质量监督检验中心(以下简称珍珠质检中心)至成立以来,珍珠检测业务得到了迅猛发展,由于该中心的信息化建设相对滞后,其发展受到了很大的制约。在2013年以前,该中心还没有一个信息系统,为了提升珍珠检测能力及防伪查询服务能力,珍珠质检中心决定建设一套珍珠鉴定信息管理及防伪系统,以提升工作效率及服务质量。
1珍珠信息管理及防伪系统需求分析
需求分析是通过需求获取得到用户原始需求的基础上,进一步加工整理,得到系统功能性需求和非功能性需求的过程。
系统的功能需求包括:信息录入;分级、鉴定、珠宝玉石鉴定记录的删、改、查;证书和标签的打印;数据导出;统计报表;防伪查询子系统。
系统非功能需求包括:系统的界面需求;系统的软硬环境及质量需求;性能及其他需求。
2珍珠信息管理及防伪系统设计
J2EE应用采用4层的分布式模型,分别是客户层、Web层、业务层和企业信息系统层。根据J2EE的分层结构本系统后台结构分解如下:
系统的前台架构设计功能按两层进行分解:
系统前台功能第二层分解如下(由于篇幅限制只列部分):
3珍珠信息管理及防伪系统实现
目前基于J2EE的框架中最优秀、使用得最多的是Struts、Hibernate、Spring。由于Spring是个轻量级容器并提供了MVC的功能,结构简单功能强大,本系统的实现就使用了Spring+Hibernate框架来实现。
3.1数据持久层实现
本系统数据库采用MySQL5.6。为了实现对关系数据库的操作转换为面向对象的操作,需要使用Hibernate的ORM功能,通过操作持久化对象转变为操作数据库,持久化对象包括PO-JO类和映射文件。POJO类与表之间的关系使用映射文件来描述。数据库连接池是dbcp,dbcp的优点是配置简单,但随着数据库访问量的增大其性能有所下降。
3.2DAO层实现
本系统使用Spring的DAO(Data Access Object)理念实现DAO层。Spring整合了各种持久化技术,以一种统一的方法来调用和对事务进行管理。DAO的实现类使用Spring的框架来管理,DAO的SessionFacctory引用对象通过Spring框架依赖注人。DAO接口定义常用的持久化方法,DAO的实现类有一个SessionFactory属性,该属性通过Spring依赖注入。持久化操作时使用SessionFactory的getCurrentSession方法取得Session对象进行操作。
3.3业务逻辑层实现
业务逻辑层由两个部分组成:数据处理功能及数据加载功能。数据处理功能是接收表示层的数据并将其传到数据持久层;数据加载功能是将持久层的数据返回给表示层。业务逻辑层的两个功能的实现都需要调用DAO层的功能,以实现用户具体的业務需求。本系统的业务逻辑层由Spring框架的工厂模式以面向接口方式开发。
3.4 Web层实现
Web层的功能是接收用户输入并转交给控制器,再由控制器调用业务逻辑组件完成业务逻辑,产生的结果再回传给控制器,控制器调用特定的页面展示给用户。本系统的web层使用Spring的MVC框架。SpringMVC控制器需要在iavaweb部署描述文件(web.xml)配置Servlet。Spring的控制器称作Dis-patcher Servlet,实现了前端的控制器模式。当一个web请求发送后,Dispatcher servlet首先接收,然后它组织在上下文配置的组件,处理该请求。
3.5摄像头控件实现
由于DirectShow对多媒体流的支持很好,在使用Direct-Show开发流媒体程序时可方便地从支持WDM驱动的采集卡上捕获数据,进行处理后存储到文件中。DirectShow是基于COM概念的。本系统摄像头控件的编写也是基于COM的,虽然DirectShow提供很多接口,但使用还是不够方便,需要创建一个视频捕捉类把常用功能封装起来。
3.6标签打印机调用
标签机的型号是台湾Godex Ez1100系列。参照Godex的编程指令EZPL和官方调用打印机接口的实例,使用iava构建如下的打印机调用类。
4测试
对本系统的测试经历了单元测试、集成测试、确认测试、系统测试和验收测试这5个阶段,其中系统测试包括功能测试、性能测试、安全性测试这几个方面。以下列举本系统功能测试的例子。
5结束语
通过对珍珠鉴定信息管理及防伪系统的建设,国家珍珠质检中心的信息化水平和服务能力得到了很大的提升,本系统的建设将工作人员从繁琐的日常工作中解放出来,提高他们的工作效率,降低管理成本,提高客户的满意度。本系统目前已经投入运行,且稳定可靠。系统的成功开发可总结如下成功经验:
1)遵循CMM13的流程可使得项目开发质量大大提升,同时也有效消除了项目过程中的潜在风险;
2)做好需求管理工作,防止需求的蔓延。所有的软件需求都和用户进行签字确认,并以此作为需求管理的基础;
3)使用J2EE成熟的架构,使得开发效率得到很大提升的同时,系统的稳定性、可扩展性、可修改性和可维护性也得到了保证。endprint