SSH架構檔案管理系統設計

隨着高校檔案管理的複雜化和網絡技術的發展,基於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技術,建立一套可伸縮性高的系統開發架構。同時,由於接口的採用,使系統可以很好地滿足與其它系統集成的需要,使利用計算機系統和網絡服務系統的檔案管理更加方便。