- 相關(guān)推薦
SSH架構(gòu)檔案管理系統(tǒng)設(shè)計
隨著高校檔案管理的復雜化和網(wǎng)絡(luò)技術(shù)的發(fā)展,基于Web的檔案管理系統(tǒng)具有很大的使用價值。研究檔案管理系統(tǒng)軟件,提出其設(shè)計開發(fā)標準的規(guī)范化建議,是為了促進檔案系統(tǒng)軟件開發(fā)設(shè)計的規(guī)范化與標準化,避免盲目設(shè)計與開發(fā),節(jié)省研制成本,減少經(jīng)濟損失,擴大軟件適用規(guī)模,達到檔案管理的自動化、統(tǒng)一化,提高檔案工作效率,保證檔案管理安全性、通用性、可靠性,進而促進檔案信息化的發(fā)展。
一、架構(gòu)技術(shù)分析
1.Struts簡介
Struts是一個為開發(fā)基于模型(Model)-視圖(View)-控制器(Controller)(MVC)模式的應用架構(gòu)的開源框架,是利用Java Servlet和JSP構(gòu)建Web應用的一項非常有用的技術(shù)。
2.Hibernate
Hibernate是一個免費的開源Java包,它使得與關(guān)系數(shù)據(jù)庫打交道變得十分輕松,同時不必考慮如何把它們從神秘的數(shù)據(jù)庫表中取出(或放回到數(shù)據(jù)庫表中)。
3.Spring
Spring是一個開源框架,它由Rod Johnson創(chuàng)建。它是為了解決企業(yè)應用開發(fā)的復雜性而創(chuàng)建的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。
4.SSH整合后的特點
(1)大大降低了開發(fā)成本。SSH 的架構(gòu)是基于Struts、Spring和 Hibernate開源框架開發(fā)設(shè)計的,所以它在技術(shù)成本上會很低,又由于應用框架技術(shù)可以更清晰的劃分開發(fā)過程中每個人的工作任務,從而降低了人力成本。
(2)低耦合,增強了系統(tǒng)的可擴張性。對于傳統(tǒng)的ASP和PHP等腳本站點技術(shù),將整個站點的業(yè)務邏輯和表現(xiàn)邏輯都混雜在ASP和PHP頁面里,從而導致頁面的可讀性相當差,可維護性非常低。即使需要簡單改變頁面的按鈕,也不得不打開頁面文件,冒著破壞系統(tǒng)的風險,因而具有良好的可擴展性。
(3)縮短項目的開發(fā)周期。使用框架技術(shù)可以避免反復開發(fā)的問題。無形中減少了開發(fā)過程中的編寫代碼量,提高了開發(fā)速度,縮短開發(fā)周期。
(4)重用性。為了避免重復開發(fā),降低成本,我們希望能夠重用以前的代碼和設(shè)計。重用是我們不斷追求的目標之一,但事實上,做到這一點不是很容易。
二、系統(tǒng)功能需求
于檔案管理管理系統(tǒng)來說,總體上的目標就是提高檔案管理的效率,將大量復雜的統(tǒng)計,重復的事務性操作等交給系統(tǒng)自動處理,在提高效率的同時,也減少了人工的投入和人工操作可能產(chǎn)生的錯誤。本系統(tǒng)的開發(fā)依據(jù)J2EE分層的系統(tǒng)框架,提出基于SSH(Struts+Spring+Hibernate)集成框架的檔案管理系統(tǒng)的設(shè)計與實現(xiàn)。基于SSH的檔案管理系統(tǒng)開發(fā)要實現(xiàn)的具體功能如下圖所示。
三、系統(tǒng)實現(xiàn)
1.Web應用層實現(xiàn)
表示層主要包括系統(tǒng)和用戶交互的頁面,它的主要功能是收集用戶的輸入、驗證和轉(zhuǎn)換輸入數(shù)據(jù),并把轉(zhuǎn)換后的數(shù)據(jù)傳遞給業(yè)務邏輯層。另外,表示層還發(fā)揮呈現(xiàn)數(shù)據(jù)、控制頁面導航,以及處理國際化編程的功能。該層使用Struts框架來實現(xiàn),Struts為基于Java的應用提供一種用戶界面開發(fā)框架以及應用邏輯和業(yè)務邏輯的連接。它通過一個控制器ActionServlet提供Web應用程序生命周期管理,而且能夠在服務器上處理客戶端事件、輸入驗證等用戶界面問題。
應用層Struts的設(shè)計主要包括用戶Struts界面以及與之協(xié)作的事件Action的設(shè)計。檔案管理系統(tǒng)設(shè)計的Action主要有:LoginAction、MenuAction、OrgAction、ParaAction、RoleAction、UserAction、DoucumentInfoAction、BorrowInfoAction
2.業(yè)務邏輯層實現(xiàn)
業(yè)務邏輯層使用Spring框架來實現(xiàn)業(yè)務邏輯處理,可以實現(xiàn)與各種框架良好的集成。同時Spring的IOC的依賴注入功能給開發(fā)人員減輕了負擔,使程序代碼邏輯結(jié)構(gòu)清晰,實現(xiàn)組件間的松散耦合,加快開發(fā)進度。業(yè)務邏輯層主要定義與應用層組件事件關(guān)聯(lián)的類和接口,用于向上層提供處理事件的服務,主要包括表示事件域處理方法的Service接口和Service實現(xiàn)類。
由于系統(tǒng)中的DAO對象緊密關(guān)聯(lián),因此采用Facade模式將DAO對象封裝起來,應用層在使用業(yè)務邏輯層的服務時,僅僅與業(yè)務邏輯的Service接口發(fā)生聯(lián)系,無需知道業(yè)務服務組件的具體實現(xiàn),也無需了解底層的DAO對象。
3.持久層實現(xiàn)
數(shù)據(jù)持久層使用Hibernate持久化框架,也是使用接口與實現(xiàn)分開的方式。這樣可以在持久層使用多種持久化技術(shù)。持久層主要定義應用程序通過具體的類與數(shù)據(jù)庫交互。遵循系統(tǒng)架構(gòu)圖,持久層的設(shè)計將使用 Facade模式定義系統(tǒng)中各個模塊的業(yè)務入口Facade接口,并定義它的實現(xiàn)類Impl,通過接口得到具體業(yè)務的DAO實現(xiàn)。通過DAO和對應模式的Domain Object,就能對數(shù)據(jù)庫進行增刪查改動作。
4.數(shù)據(jù)庫設(shè)計
系統(tǒng)數(shù)據(jù)庫的設(shè)計實現(xiàn),對系統(tǒng)的應用具有很重要的意義。根據(jù)檔案管理系統(tǒng)的實際數(shù)據(jù)量考慮,采用了Mysql數(shù)據(jù)庫。Mysql是一個精巧的SQL數(shù)據(jù)庫管理系統(tǒng),以操作簡便著稱。由于其強大的功能、豐富的應用編程接口以及精巧的系統(tǒng)結(jié)構(gòu)設(shè)計,在基于數(shù)據(jù)庫的應用軟件開發(fā)總得到了廣泛的應用。
作為一個數(shù)據(jù)庫管理系統(tǒng),MySQL是客戶機/服務器模式的分布式系統(tǒng),由SQL服務器、客戶端、管理工具和應用編程接口等一整套工具組成。它的平臺無關(guān)性優(yōu)點使其能在多個操作系統(tǒng)上運行。此外,MySQL還是多線程的,不僅具有運行速度快,可處理大批量數(shù)據(jù)等特點,還支持多CPU使用。
檔案管理系統(tǒng)共建立了7張數(shù)據(jù)表:t_user(用戶表)、t_channel(菜單表)、t_news(新聞表)、t_org(機構(gòu)信息表)、t_para(參數(shù)信息表)、t_info(檔案信息表)、t_borrow(檔案借閱信息表)。
本文采用了基于Java平臺的多層架構(gòu),通過運用Struts技術(shù),Spring技術(shù),Hibernate技術(shù),建立一套可伸縮性高的系統(tǒng)開發(fā)架構(gòu)。同時,由于接口的采用,使系統(tǒng)可以很好地滿足與其它系統(tǒng)集成的需要,使利用計算機系統(tǒng)和網(wǎng)絡(luò)服務系統(tǒng)的檔案管理更加方便。
【SSH架構(gòu)檔案管理系統(tǒng)設(shè)計】相關(guān)文章:
系統(tǒng)架構(gòu)設(shè)計模式大全08-22
基于云架構(gòu)的系統(tǒng)安全設(shè)計08-08
系統(tǒng)架構(gòu)設(shè)計師要素01-11
MES系統(tǒng)安全架構(gòu)設(shè)計09-19
系統(tǒng)架構(gòu)設(shè)計師考試之路01-11
三層架構(gòu)的商務智能系統(tǒng)設(shè)計12-25
系統(tǒng)架構(gòu)設(shè)計師考試報考條件12-30
系統(tǒng)架構(gòu)設(shè)計師輔導:處理圖像01-11