廖顯文+李占利
摘要:對國家珍珠及珍珠制品質(zhì)量監(jiān)督檢驗中心而言,建設珍珠鑒定信息管理及防偽系統(tǒng)能顯著提升其信息化水平及服務能力;在該系統(tǒng)建設過程中首先借助UML進行詳細需求分析;其次在進行系統(tǒng)架構設計時遵循J2EE規(guī)范將系統(tǒng)分為三層,即表現(xiàn)層、中間層及數(shù)據(jù)存儲層;中間層又分為Web層、業(yè)務邏輯層、數(shù)據(jù)訪問層和數(shù)據(jù)持久化層。系統(tǒng)的詳細設計又分為用戶界面設計、數(shù)據(jù)庫設計和模塊設計。最后按分層的設計使用1ava相關技術實現(xiàn)。標簽打印機調(diào)用及攝像頭控件這兩個關鍵模塊分別使用EZPL編程語言和COM技術來實現(xiàn)。
關鍵詞:J2EE;鑒定信息管理;防偽;CMM13
廣西北海是被認定為中國南珠的原產(chǎn)地,北海是全國最大的海水珍珠集散地和交易中心。珍珠及珍珠制品是廣西的重要旅游商品,但近年來假冒偽劣產(chǎn)品屢禁不止,嚴重影響和制約了珍珠及珍珠制品的生產(chǎn)。國家珍珠及珍珠制品質(zhì)量監(jiān)督檢驗中心(以下簡稱珍珠質(zhì)檢中心)至成立以來,珍珠檢測業(yè)務得到了迅猛發(fā)展,由于該中心的信息化建設相對滯后,其發(fā)展受到了很大的制約。在2013年以前,該中心還沒有一個信息系統(tǒng),為了提升珍珠檢測能力及防偽查詢服務能力,珍珠質(zhì)檢中心決定建設一套珍珠鑒定信息管理及防偽系統(tǒng),以提升工作效率及服務質(zhì)量。
1珍珠信息管理及防偽系統(tǒng)需求分析
需求分析是通過需求獲取得到用戶原始需求的基礎上,進一步加工整理,得到系統(tǒng)功能性需求和非功能性需求的過程。
系統(tǒng)的功能需求包括:信息錄入;分級、鑒定、珠寶玉石鑒定記錄的刪、改、查;證書和標簽的打印;數(shù)據(jù)導出;統(tǒng)計報表;防偽查詢子系統(tǒng)。
系統(tǒng)非功能需求包括:系統(tǒng)的界面需求;系統(tǒng)的軟硬環(huán)境及質(zhì)量需求;性能及其他需求。
2珍珠信息管理及防偽系統(tǒng)設計
J2EE應用采用4層的分布式模型,分別是客戶層、Web層、業(yè)務層和企業(yè)信息系統(tǒng)層。根據(jù)J2EE的分層結構本系統(tǒng)后臺結構分解如下:
系統(tǒng)的前臺架構設計功能按兩層進行分解:
系統(tǒng)前臺功能第二層分解如下(由于篇幅限制只列部分):
3珍珠信息管理及防偽系統(tǒng)實現(xiàn)
目前基于J2EE的框架中最優(yōu)秀、使用得最多的是Struts、Hibernate、Spring。由于Spring是個輕量級容器并提供了MVC的功能,結構簡單功能強大,本系統(tǒng)的實現(xiàn)就使用了Spring+Hibernate框架來實現(xiàn)。
3.1數(shù)據(jù)持久層實現(xiàn)
本系統(tǒng)數(shù)據(jù)庫采用MySQL5.6。為了實現(xiàn)對關系數(shù)據(jù)庫的操作轉(zhuǎn)換為面向?qū)ο蟮牟僮?,需要使用Hibernate的ORM功能,通過操作持久化對象轉(zhuǎn)變?yōu)椴僮鲾?shù)據(jù)庫,持久化對象包括PO-JO類和映射文件。POJO類與表之間的關系使用映射文件來描述。數(shù)據(jù)庫連接池是dbcp,dbcp的優(yōu)點是配置簡單,但隨著數(shù)據(jù)庫訪問量的增大其性能有所下降。
3.2DAO層實現(xiàn)
本系統(tǒng)使用Spring的DAO(Data Access Object)理念實現(xiàn)DAO層。Spring整合了各種持久化技術,以一種統(tǒng)一的方法來調(diào)用和對事務進行管理。DAO的實現(xiàn)類使用Spring的框架來管理,DAO的SessionFacctory引用對象通過Spring框架依賴注人。DAO接口定義常用的持久化方法,DAO的實現(xiàn)類有一個SessionFactory屬性,該屬性通過Spring依賴注入。持久化操作時使用SessionFactory的getCurrentSession方法取得Session對象進行操作。
3.3業(yè)務邏輯層實現(xiàn)
業(yè)務邏輯層由兩個部分組成:數(shù)據(jù)處理功能及數(shù)據(jù)加載功能。數(shù)據(jù)處理功能是接收表示層的數(shù)據(jù)并將其傳到數(shù)據(jù)持久層;數(shù)據(jù)加載功能是將持久層的數(shù)據(jù)返回給表示層。業(yè)務邏輯層的兩個功能的實現(xiàn)都需要調(diào)用DAO層的功能,以實現(xiàn)用戶具體的業(yè)務需求。本系統(tǒng)的業(yè)務邏輯層由Spring框架的工廠模式以面向接口方式開發(fā)。
3.4 Web層實現(xiàn)
Web層的功能是接收用戶輸入并轉(zhuǎn)交給控制器,再由控制器調(diào)用業(yè)務邏輯組件完成業(yè)務邏輯,產(chǎn)生的結果再回傳給控制器,控制器調(diào)用特定的頁面展示給用戶。本系統(tǒng)的web層使用Spring的MVC框架。SpringMVC控制器需要在iavaweb部署描述文件(web.xml)配置Servlet。Spring的控制器稱作Dis-patcher Servlet,實現(xiàn)了前端的控制器模式。當一個web請求發(fā)送后,Dispatcher servlet首先接收,然后它組織在上下文配置的組件,處理該請求。
3.5攝像頭控件實現(xiàn)
由于DirectShow對多媒體流的支持很好,在使用Direct-Show開發(fā)流媒體程序時可方便地從支持WDM驅(qū)動的采集卡上捕獲數(shù)據(jù),進行處理后存儲到文件中。DirectShow是基于COM概念的。本系統(tǒng)攝像頭控件的編寫也是基于COM的,雖然DirectShow提供很多接口,但使用還是不夠方便,需要創(chuàng)建一個視頻捕捉類把常用功能封裝起來。
3.6標簽打印機調(diào)用
標簽機的型號是臺灣Godex Ez1100系列。參照Godex的編程指令EZPL和官方調(diào)用打印機接口的實例,使用iava構建如下的打印機調(diào)用類。
4測試
對本系統(tǒng)的測試經(jīng)歷了單元測試、集成測試、確認測試、系統(tǒng)測試和驗收測試這5個階段,其中系統(tǒng)測試包括功能測試、性能測試、安全性測試這幾個方面。以下列舉本系統(tǒng)功能測試的例子。
5結束語
通過對珍珠鑒定信息管理及防偽系統(tǒng)的建設,國家珍珠質(zhì)檢中心的信息化水平和服務能力得到了很大的提升,本系統(tǒng)的建設將工作人員從繁瑣的日常工作中解放出來,提高他們的工作效率,降低管理成本,提高客戶的滿意度。本系統(tǒng)目前已經(jīng)投入運行,且穩(wěn)定可靠。系統(tǒng)的成功開發(fā)可總結如下成功經(jīng)驗:
1)遵循CMM13的流程可使得項目開發(fā)質(zhì)量大大提升,同時也有效消除了項目過程中的潛在風險;
2)做好需求管理工作,防止需求的蔓延。所有的軟件需求都和用戶進行簽字確認,并以此作為需求管理的基礎;
3)使用J2EE成熟的架構,使得開發(fā)效率得到很大提升的同時,系統(tǒng)的穩(wěn)定性、可擴展性、可修改性和可維護性也得到了保證。endprint