當前位置:才華齋>職業>系統架構師>

SSH架構檔案管理系統設計

系統架構師 閱讀(9.71K)

隨著高校檔案管理的複雜化和網路技術的發展,基於Web的檔案管理系統具有很大的使用價值。研究檔案管理系統軟體,提出其設計開發標準的規範化建議,是為了促進檔案系統軟體開發設計的規範化與標準化,避免盲目設計與開發,節省研製成本,減少經濟損失,擴大軟體適用規模,達到檔案管理的自動化、統一化,提高檔案工作效率,保證檔案管理安全性、通用性、可靠性,進而促進檔案資訊化的發展。

SSH架構檔案管理系統設計

  一、架構技術分析

ts簡介

Struts是一個為開發基於模型(Model)-檢視(View)-控制器(Controller)(MVC)模式的應用架構的開源框架,是利用Java Servlet和JSP構建Web應用的一項非常有用的技術。

rnate

Hibernate是一個免費的開源Java包,它使得與關係資料庫打交道變得十分輕鬆,同時不必考慮如何把它們從神祕的資料庫表中取出(或放回到資料庫表中)。

ng

Spring是一個開源框架,它由Rod Johnson建立。它是為了解決企業應用開發的複雜性而建立的。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。

整合後的特點

(1)大大降低了開發成本。SSH 的架構是基於Struts、Spring和 Hibernate開源框架開發設計的',所以它在技術成本上會很低,又由於應用框架技術可以更清晰的劃分開發過程中每個人的工作任務,從而降低了人力成本。

(2)低耦合,增強了系統的可擴張性。對於傳統的ASP和PHP等指令碼站點技術,將整個站點的業務邏輯和表現邏輯都混雜在ASP和PHP頁面裡,從而導致頁面的可讀性相當差,可維護性非常低。即使需要簡單改變頁面的按鈕,也不得不開啟頁面檔案,冒著破壞系統的風險,因而具有良好的可擴充套件性。

(3)縮短專案的開發週期。使用框架技術可以避免反覆開發的問題。無形中減少了開發過程中的編寫程式碼量,提高了開發速度,縮短開發週期。

(4)重用性。為了避免重複開發,降低成本,我們希望能夠重用以前的程式碼和設計。重用是我們不斷追求的目標之一,但事實上,做到這一點不是很容易。

  二、系統功能需求

於檔案管理管理系統來說,總體上的目標就是提高檔案管理的效率,將大量複雜的統計,重複的事務性操作等交給系統自動處理,在提高效率的同時,也減少了人工的投入和人工操作可能產生的錯誤。本系統的開發依據J2EE分層的系統框架,提出基於SSH(Struts+Spring+Hibernate)整合框架的檔案管理系統的設計與實現。基於SSH的檔案管理系統開發要實現的具體功能如下圖所示。

  三、系統實現

應用層實現

表示層主要包括系統和使用者互動的頁面,它的主要功能是收集使用者的輸入、驗證和轉換輸入資料,並把轉換後的資料傳遞給業務邏輯層。另外,表示層還發揮呈現資料、控制頁面導航,以及處理國際化程式設計的功能。該層使用Struts框架來實現,Struts為基於Java的應用提供一種使用者介面開發框架以及應用邏輯和業務邏輯的連線。它通過一個控制器ActionServlet提供Web應用程式生命週期管理,而且能夠在伺服器上處理客戶端事件、輸入驗證等使用者介面問題。

應用層Struts的設計主要包括使用者Struts介面以及與之協作的事件Action的設計。檔案管理系統設計的Action主要有:LoginAction、MenuAction、OrgAction、ParaAction、RoleAction、UserAction、DoucumentInfoAction、BorrowInfoAction

2.業務邏輯層實現

業務邏輯層使用Spring框架來實現業務邏輯處理,可以實現與各種框架良好的整合。同時Spring的IOC的依賴注入功能給開發人員減輕了負擔,使程式程式碼邏輯結構清晰,實現元件間的鬆散耦合,加快開發進度。業務邏輯層主要定義與應用層元件事件關聯的類和介面,用於向上層提供處理事件的服務,主要包括表示事件域處理方法的Service介面和Service實現類。

由於系統中的DAO物件緊密關聯,因此採用Facade模式將DAO物件封裝起來,應用層在使用業務邏輯層的服務時,僅僅與業務邏輯的Service介面發生聯絡,無需知道業務服務元件的具體實現,也無需瞭解底層的DAO物件。

3.持久層實現

資料持久層使用Hibernate持久化框架,也是使用介面與實現分開的方式。這樣可以在持久層使用多種持久化技術。持久層主要定義應用程式通過具體的類與資料庫互動。遵循系統架構圖,持久層的設計將使用 Facade模式定義系統中各個模組的業務入口Facade介面,並定義它的實現類Impl,通過介面得到具體業務的DAO實現。通過DAO和對應模式的Domain Object,就能對資料庫進行增刪查改動作。

4.資料庫設計

系統資料庫的設計實現,對系統的應用具有很重要的意義。根據檔案管理系統的實際資料量考慮,採用了Mysql資料庫。Mysql是一個精巧的SQL資料庫管理系統,以操作簡便著稱。由於其強大的功能、豐富的應用程式設計介面以及精巧的系統結構設計,在基於資料庫的應用軟體開發總得到了廣泛的應用。

作為一個數據庫管理系統,MySQL是客戶機/伺服器模式的分散式系統,由SQL伺服器、客戶端、管理工具和應用程式設計介面等一整套工具組成。它的平臺無關性優點使其能在多個作業系統上執行。此外,MySQL還是多執行緒的,不僅具有執行速度快,可處理大批量資料等特點,還支援多CPU使用。

檔案管理系統共建立了7張資料表:t_user(使用者表)、t_channel(選單表)、t_news(新聞表)、t_org(機構資訊表)、t_para(引數資訊表)、t_info(檔案資訊表)、t_borrow(檔案借閱資訊表)。

本文采用了基於Java平臺的多層架構,通過運用Struts技術,Spring技術,Hibernate技術,建立一套可伸縮性高的系統開發架構。同時,由於介面的採用,使系統可以很好地滿足與其它系統整合的需要,使利用計算機系統和網路服務系統的檔案管理更加方便。