趙 超 王 泓
(沈陽師范大學科信軟件學院,遼寧 沈陽 110034)
基于B/S 結構的Web 程序的開發,有非常大的靈活性,允許用戶遠程訪問系統資源的同時能對數據平臺和管理訪問權限進行有效的保護。 B/S 結構軟件的所有的客戶端只是瀏覽器,也只需要管理服務器,更為快捷、方便、高效。 與C/S 體系結構相比,B/S 體系結構不僅具有C/S 體系結構的全部優點,而且具有客戶端零維護、可擴展性好、安全性好、資源重用性好等新的優點。
計算機收費系統式收費站的主要組成部分[3]。 每個收費站由網絡服務器、管理計算機構成的上端管理系統和若干個車道控制計算機構成 的車道控制系統組成局域網。 高速公路計算機收費系統的目標是:按照每輛車的車型和實際行駛里程收費;提高收費的工作效率,盡量降低由于收費過程引起的交通延誤,提高高速公路的通行能力;實現高速公路的現代化營運管理為智能運輸系統的實現留有一定的接口。基于系統的以上目標,收費系統應該具有以下功能:
1)實行計算機管理,盡量減少人為干預,保證車型判別的正確性。
2)系統能自動檢查設備運行狀態,能準確并及時地給出故障信息和故障排除信息。
3)系統應該是全天候、實時的,如收費車道應該在任何時間有車輛通過時能正常使用。
4)具有一定的報警功能,如遇搶劫時的遠程報警,與車輛沖關或進出口收費員判刑不一致時報警。
根據以上對系統需求的描述和功能的分析, 對于收費管理系統,它主要處理的數據是收費數據,主要包括4 個模塊:數據登錄模塊,錄入模塊,維護模塊。
MVC 某種語言所特有的設計思想, 而是所有面向對象程序設計語言都應該遵守的規范[4]。MVC 思想將應用分為三個基本部分:模型、視圖、控制器。這三個部分將以最少的耦合協同工作,從而提高應用的可擴展性及可維護性。
Struts2 是Struts 的下一代產品,是一個優雅的,可擴展的Java EE Web 框架[5]。 它是Struts 和WebWork 的技術基礎上進行合并的全新的Struts2 框 架 。 但 是 ,Struts2 沒 有 繼 承 Struts1 的 血 統 , 而 是 繼 承WebWork 的血統。 Struts 框架作為 MVC 模式的典型實現, 對 Model、View 和Controller 都提供了對應的實現組件。
Spring 框架是一個分層架構,由7 個模塊組成,各個模塊之間是相互的。Spring 其他模塊構建在核心容器之上,其中,核心容器定義了創建、配置和管理bean 的方式。
在系統需求分析和設計的基礎上,在系統的開發過程中,將SSH架構應用到實際的項目開發中,并且利用第三方報表開發軟件開發報表部分,極大地簡化了系統的開發,提高了效率。在整個系統的實現過程中,本文主要實現了收費管理系統模塊。
用戶登錄模塊的設計中完全實現了MVC 模式, 實現了視圖與數據處理的分離。 登錄頁面、修改密碼頁面以及登錄成功頁面構成視圖層;用戶登錄及修改密碼的請求應答控制由控制器實現;具體的用戶信息合法性由Struts2 提供的客戶端輸入校驗完成, 保證輸入信息的合法性。 圖1 是用戶登錄的簡要圖。

圖1 用戶登錄圖
數據錄入模塊主要就是報表文件的開發,設計報表文件,首先要打開設計器,連接到數據源,然后開始進行報表文件的設計。本模塊中報表文件,僅用于數據錄入,因此可以創建的報表應該選擇填報或參數表單。 然后在快逸報表中的表格中填寫選項,設置選項的屬性要根據需求來設置,包括設置數據的格式,編輯的風格、是否可寫,能否為空等。
該模塊主要是負責維護人員名單的相關信息。由于本系統是內部人員使用的系統,用戶較少,不需要通過注冊來添加人員,而是通過該模塊來添加刪除人員或者修改其權限。
主要涉及到的信息包括:站號、用戶ID、用戶名、用戶密碼、班次編號、錄入權限、監視權限、統計權限、檢索權限、稽查權限、維護權限、票據管理權限、卡管理權限等,如表1 所示。其中各種管理權限來自于用戶信息中purview 字段,每個比特位代表一種權限。

表1 人員權限設置圖
系統采用SSH(Struts2+Spring+Hibernate)輕量級框架,完成了高速公路收費管理系統的開發,對三個框架的使用和集成有了深刻的認識。本文詳細介紹了三個框架的背景、相關技術以及內部實現原理,包括MVC 的開發模式、ORM 技術以及IOC 和AOP, 這些對于系統的開發有非常重要的幫助。項目基于MVC 的思想進行開發,Struts2 框架負責了表示層和控制層; 采用Hibernate 框架以面向對象的方式來訪問數據庫, 極大地簡化了數據庫操作;Spring 框架將業務層又細分為業務邏輯層和數據持久層,使得接口和實現進一步的分離,使開發者從繁雜的事務管理中解脫出來,而專注于業務邏輯的處理。
[1]彭艷玲,胡松濤.高速公路收費現狀與存在問題研究[J].山西科技,2008(04):10-12.doi:10.3969/j.issn.1004-6429.2008.04.005.
[2]吳煒,丁月華,文貴華.ETC 車道控制系統的設計與實現[J].計算機工程,2001(05):162-163.doi:10.3969/j.issn.1000-3428.2001.05.065.
[3]郭敏.高速公路收費系統[M].北京:人民交通出版社,2002,7:15.
[4]李剛.較輕量級 JavaEE 企業應用實踐[M].北京:電子工業出版社,2004,11:158.
[5][美]巴西亞,等,編.Java 企業級持久化技術指南[M].葉斌,譯.北京:科學出版社,2010,6:137.
[6]白廣元.Java Web 整合開發完全自學手冊[S].北京:機械工業出版社,2009,8:144.