Java技術在銀行業的應用
論Java技術在因特網平台上的應用——論文3:銀行業的應用
【摘要】
因特網上應用的日益普及與深化,為Java技術的運用提供了廣闊的活動舞台,也大大推進了Browser/Server模式的企業內聯網應用與網絡計算。
作為某信息公司中的技術骨幹,我有幸承擔了某銀行信貸管理與查詢系統等的開發任務,獨立地完成了其中的系統設計、類設計、部分開發及測試工作。
整個系統完全按照J2EE的標準來設計。前台界面應用了JSP技術,控制部分採用了Servlet來開發,業務邏輯應用了EJB技術來封裝,應用服務器採用了支持J2EE標準的BEA公司的Weblogic,後台的數據庫選用的是Informix7.3,目的是為了與銀行中其他業務系統數據庫保持一致。在硬件平台上,我們選用的是HP公司的某台中型服務器機器,操作系統是HP-UX。
該系統界面運用的是IE,它不僅兼容性較好,而且已為廣大用户所熟悉。系統運行後,各個支行都普遍反映界面友善,功能強大,開發的效果令人滿意。
【正文】
在銀行應用中私人的儲蓄、企業的會計、國際的業務、信貸、財務管理都是十分重要的,它們構成銀行的基礎業務系統。我從事開發的信貸業務更是銀行利潤來源的重要部分。與儲蓄,對公等以交易事務為主的業務模式有所不同的是,儘管信貸也是交易,但需要更多其他輔助信息的支持。如客户的基本資料,在本行內業務發生狀況、信用等級、是否有逾期貸款未能歸還等。各個支行的有關業務人員及分行管理人員都希望能方便及時地瞭解這些信息。傳統的基於終端的用户界面難以傳遞這麼多信息給用户,所以我們決定採用基於測覽器IE的用户界面,一方面IE使用方便,不需要專門培訓,另外它是與Windows操作系統捆綁在一起的,也可節省前台費用。在開發技術上有ASP,JSP可供選擇。
由於考慮到Java技術在Internet上的迅速發展,J2EE更是提出了全新的用語言來統一平台的思路,於是我們決定採納J2EE標準,並選用了JSP。在設計上,基本上是採用了一個交易畫面對應於一個JSP程序,充分發揮JSP動態處理頁面的'長處。
為了使設計有更好的可擴性、靈活性與邏輯性,能為以後擴展奠定堅實的基礎,我採用了(Modelu,View,Controller)的MVC設計模式,View全部由JSP實現,而Controller則是設計了一個Servlet程序,它負責處理前台瀏覽器傳送來的所有請求,並按事先定義好的路徑/程序關係,分發給相應的JSP程序去處理。由於Servlet本來就是為Java服務器端編程來設計的,因此由它來負責服務器端的處理是相當合適的。
在開始設計時,我運用了構件技術,由EJB承擔起設計模式的Modelu角色。具體的貸款開户,放款,結息逾期貸款,歸還貸款等交易都對應一個具體的EJB。為了將這些處理邏輯與相應的數據庫操作分離開,能更加便於維護,我將處理業務的EJB設計成SessionBean,而為每個SessionBean再配備一個相對應的EntityBean,用於訪問後台的數據庫。貸款管理中有很重要的一點是進行查詢,我按照需求分析的結果,為每類查詢都設計了相對應的Bean,其目標是儘可能地提高查詢的速度。
在對數據庫的存取中,我本來的設計應用InformixJDBC所帶的DriverManager,這樣,在存取數據庫中的Bean中就要把Driver及Server寫入,後來考慮到應儘量提高應用的平台灣立性,在參閲了J2EE中JDBC部分的説明後,改用了DataResource的處理方法,這樣,即使以後數據庫換成Oracle或其他產品,程序也不用修改,只需要在配置時進行變動即可。
在這次信貸管理系統的開發過程中,Java的平台無關性優勢,在開發人員從事開發的活動中體現得淋漓盡致。由於經費相對緊缺,我們的開發環境是各個項目組共用一台HP機器,雖然每個開發小組都搭建了自己的環境,但項目一多,特別是遇上結息與批量測試等場合,機器就顯得不堪重負,使開發與測試工作的效率大為下降。我們小組由於採用的是Java技術,大家可以在自己的NT機器上搭建相同的環境。這樣一來,大家平時的開發工作,包括JSP,Servlet,EJB的程序,都可以在本地完成,只是到測試或展現階段才需放到HP開發機器上進行。
以前我們開發的Web應用,往往只是應用了部分的Web技術,如採用ApacheWebServer、ASP開發語言等。整個體系的集成與組合往往不夠理想,這次由於我們採用的一整套符合J2EE標準的組件,整個系統的協同性與一致性非常之好。再加上有一個支持J2E
E的應用服務器——BEAWeblogic,以往我們做得不理想的複雜配置,模塊間的連結,如今都用不到再操心了,只需在圖形化的配置工具中,輸入系統所需要的配置,如路徑與實際應用程序的關係,組件中的EJB引用,DataResource的屬性等;全部配置完成後,Weblogic會替我們完成項目的部署,並將這一切有關的程序都封裝起來。
原來,我們開發小組的文檔編制任務顯得非常之繁重,因為整個系統既有交易部分,又有管理查詢部分,交易、數據與源程序都很多。為了解決這個問題,我們直接應用了Java源程序中的Javadoc導出文檔,這樣不僅文檔美觀,而且能夠保持與源程序的一致性,實乃一石二鳥之舉。
整個項目完成後,用户使用下來都覺得界面友好,操作簡便。但是我心裏知道.這個系統還有很多可以加以改進的地方。
首先,基於Java系統的開發需要資金較多的投入,由於該系統受到經費的限制,只申請到一台生產用機,這樣,WebServer、ApplicationServer、DBServer只能被擠放在一起。雖然Weblogic能實現部分負載平衡,但在將來的業務發展時,這樣的分佈肯定不是最理想的。好在我們在設計時已經考慮過儘量有良好的擴展性,在以後條件許可時,只需進行在不同機器之間的進一步部署即可,應用程序大體上無需改動。
其次,在設計上,可以採用UML的產品,如RationalRose,另一方面,RationalRose具有
自動代碼生成功能,也可以大大節省開發的成本。
最後,目前的信貸管理系統相對用户數目量不多,當推廣類似系統需要擁有大批用户時,基於Java的系統的響應時間與系統分佈都會有較為突出的矛盾出現。
以上這些,都是我在今後的系統設計與開發中需要加以注意的地方,也是運用Java技術應當努力的方向。
評註:討論具體,應用較為深入,表達清晰。存在的問題屬實。
-
java中length和length()的區別
泉水,奮鬥之路越曲折,心靈越純潔。以下是小編為大家搜索整理了java中length和length()的區別,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!length是屬性,一般集合類對象擁有的屬性,取得集合的大小。例如:數組th就是取得數組的長度。length()是...
-
JAVA語言的介紹及發展
Java語言是一種計算機語言,那麼除此之外還有什麼呢?下面是小編整理的Java語言出現的背景、影響及應用前景,歡迎閲讀!一、背景最近一年多來,在Internet上出現的特別吸引人的事件就是Java語言和用Java編寫的瀏覽器HotJava。1991年,SUNMicroSystem公司的JameGosling...
-
linux下執行java程序的sh腳本教程
文章主要介紹了linux下執行java程序的sh腳本,僅供參考,但是設置的時候環境變量是最重要的,我就是環境變量一直不對,總是按網上查到的來,不明白怎麼回事,才一直出錯,其實環境變量就是你要執行的java程序所在的位置。接下來是小編為大家收集的linux下執行java程序的sh腳...
-
2017上半年計算機二級Java練習題及答案
計算機等級證書是我們找工作的敲門磚,現在越來越多人重視計算機等級考試。下面是本站小編為大家帶來的2017上半年計算機二級Java練習題及答案,希望對大家的學習有幫助!一、單選題1、結構化程序設計主要強調的是______。A、程序的規模B、程序的易讀性C、程序的執...