孫楓
摘要:隨著我國經濟金融的快速發展,社會公眾對人民幣現金的服務要求越來越高,給傳統的人民幣現金管理模式帶來了新的壓力和挑戰。目前,現金機具可在清分清點處理環節記錄人民幣字號碼信息,但這些信息不能在銀行業金融機構間共享利用。設計一套基于冠字號碼信息共享的人民幣現金流通管理系統,實現信息標準規范化、信息交換自動化、資源共享最大化,對提升人民銀行現金管理水平有重要意義。該系統設計為典型的J2EE三層架構,表現層采用JSP技術,方便地實現頁面表示;業務邏輯層采用輕量級Spring框架,充分利用Spring的開發效率高、易測試維護和應用服務可移植性等優點;數據訪問層采用Mybatis持久層框架,程序員可靈活編輯SQL語句操作數據庫。基于J2EE的輕量型開發架構能簡化系統中的組件,使系統擴展更加簡單。
關鍵詞:現金流通;架構;系統設計
中圖分類號:TP315 文獻標識碼:A
文章編號:1009-3044(2019)09-0082-02
1 人民幣冠字號碼管理現狀
人民幣冠字號碼是人民幣的身份證,目前,商業銀行的點鈔機、清分機、自助機具均具備了冠字號碼記錄功能,一方面可以確認清分責任,嚴禁對外付出不宜流通人民幣;另一方面可以解決金融機構假幣糾紛舉證難題。由于信息不共享,各商業銀行記錄的冠字號碼信息成為一個個的信息孤島,商業銀行從人民銀行取出已清分現金需重復清分,且人民銀行無法掌握現金流向,大大降低了工作效率和質量。為實現清分信息共享的核心功能,使冠字號碼信息流與實物同步流轉,解決重復清分和手工管理現金無序化、效率低下等問題,亟待設計開發一套人民幣現金流通管理系統。該系統運用物聯網RFID溯源和數據分析技術,實現現金的全過程跟蹤,做到事前預防、事中控制、事后追溯,防范現金管理風險。
2 人民幣現金流通管理系統的架構設計
系統設計過程中,要始終把握查詢準確方便、存儲數據安全可靠、良好的設計界面幾個原則。金融系統多年來一直較重視信息技術的發展,金融城域網已經實施。考慮到商業銀行網點眾多,軟件系統的改進和升級工作量較大,使用B/S架構能使維護和升級相對簡單,只需對服務器進行升級和維護即可;雖然服務器的負擔加重,但商業銀行總體成本是下降的,因此首先考慮B/S架構體系。人民銀行和商業銀行均部署相應的服務器,并通過web service進行交互。在系統的軟件平臺上,我們使用JAVA語言基于Eclipse進行開發,JAVA語言的平臺兼容性,可以讓數據在整個系統安全、有效地流動。整體架構設計采用Struts+Sping+Mybitis,用以構建簡潔、靈活、可擴展性與易維護性的多層應用系統。
3 人民幣現金流通管理系統的實現設計
Struts+Sping+Mybitis基于典型的分層架構,主要分為表現層、業務邏輯層、數據訪問層[1]。
2)業務邏輯層,主要針對具體問題的操作,即負責處理系統中的各類業務邏輯,是系統架構的核心,具體包含業務規則的制定、業務流程的實現等與業務需求有關的設計。應用軟件可通過邏輯單元的封裝,使代碼更加清晰明了,從而提高軟件的可靠性和穩定性。業務邏輯層的核心是在數據交換中起承上啟下的作用,因此業務邏輯層的有效設計有利于架構的后期擴展[3]。在后臺開發中,我們遵循面向接口設計的思想,采用分層的辦法,自頂向下依次為controller層,service接口層,service實現層,DAO層,數據持久層,這五層自頂向下依次調用,實現依賴關系的解耦。除此之外,為了保證該層對事物能夠進行很好的控制,我們充分利用了Spring容器本身的特點,通過配置文件的方式來達到這一目的,充分發揮了Spring開發效率高、易測試維護和應用服務可移植性等優點。
3)數據訪問層,設計中我們使用Mybatis作為持久層框架,Mybitis消除了幾乎所有的JDBC代碼和參數,通過手動配置和對檢索結果集的封裝,即可將POJO類映射成數據庫中的記錄??紤]到每張人民幣都要生成一條冠字號碼信息,數據量無疑很大,數據庫的負載必須進行考慮。數據連接池技術能避免頻繁創建和釋放連接,通過資源重用減少系統消耗,使響應速度更快。商業銀行每天清分現金的次數較多,清分機具生成的冠字號碼按時間段或業務筆數分別生成規范的FSN文件,如果頻繁創建和釋放連接,必然導致服務器性能的下降。因此,在系統初始化的時候,將數據庫連接作為對象存儲在內存中,用戶讀取數據庫時都是對連接池進行操作,可有效降低資源的消耗。另一方面,通過高速緩存技術,對某些固定的數據庫查詢結果,如日期、金融機構編碼、面額、券別、版別進行緩存,以加快數據庫的訪問速度,優化服務器的性能。
該架構充分體現了"低耦合,高內聚"的特點,采用面向抽象編程。即上層對下層的調用,是通過接口實現的。而下層對上層的真正服務提供者,是下層接口的實現類。服務標準(接口)是相同的,服務提供者(實現類)可以更換[4],從而降低各層間的耦合度,實現代碼的健壯性和可擴展性??偟膩碚f,該架構充分體現了Spring的高開發效率、易測試維護性及應用服務的可移植性等優點,同時也能體現出該系統的可擴展性與靈活性,達到了項目的預期目標。
4 結束語
人民幣現金流通管理系統采用更注重架構靈活性和擴展性的輕量級J2EE開發,能夠靈活地整合前沿技術,有利于系統的開發、維護和擴展。但仍然有值得改進的地方。首先,在用戶界面定制方面,我們希望通過不斷的實踐,加強其靈活性,盡可能把可供選擇的字段擴大到整個數據庫。再次,各銀行網點數量的增加,將使服務器性能不斷下降,今后將通過分布式服務器架構及更多技術進行優化。
參考文獻:
[1] 蔡淑波.三層體系結構在油田軟件開發中的應用[J].電腦編程技巧與維護,2010(22).
[2] 溫文,王燕敏,牛國富, 等.基于WPF三層架構的油氣管輸價格管理系統的開發與應用[J].科技和產業,2017(10).
[3] 錢建裕.基于MVC的公交車輛信息管理系統的設計與實現[D].廈門:廈門大學,2017.
[4] 張艷華,鄭杰.論多層分布式系統的開發[J].成才之路,2007(31).
【通聯編輯:謝媛媛】