本站小編為你精心準備了SSH框架科研管理系統的設計參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
摘要:
傳統JavaEE架構在開發過程中會受到種種限制,為提高開發的靈活性和效率,開發人員通常采用Struts、Spring和Hibernate這種目前較為流行的輕量級Web開發架構。這三種開源框架各有其自身的特點,使用他們分別實現系統的表示層、業務邏輯層和數據持久化層,層次間通過接口通信。采用這種集成框架模式開發的科研管理系統,可以降低系統代碼的耦合性,提高系統的可維護性和擴展性。
關鍵詞:
輕量級架構;ssh;表示層;業務邏輯層;持久化層
科研管理信息化是高校信息化建設的重要組成部分。在“數字校園”建設過程中,遇到了很多問題,例如,由于過去建設的信息系統,在設計時缺乏整體架構關鍵,各部門獨立建設,導致校園內已建成的信息系統之間不能進行信息交換,業務數據不一致,相關業務流程不能真正實現自動化,給廣大師生帶來了諸多不便。在這種情況下,非常有必要建設一個基于共享數據庫的校園科研管理系統,實現基礎數據的全部共享。本文以某高校科研管理系統為例,從研究系統的總體架構設計、業務流程入手,分析了異構數據庫的特點,實現了基于異構數據庫科研管理系統的數據共享問題。
1科研管理系統總體設計
系統開發使用Java開發平臺,以MySQL為后臺數據庫的B/S架構。采用這種成熟的結構,可以避免不必要的技術困難。(1)總體設計架構??蒲泄芾硐到y采用分層架構體系。使用校園網統一身份認證平臺進行安全認證,保證系統運行的安全可靠。基于共享數據庫的科研管理系統能夠為高??蒲泄芾硖峁┗A信息支持,并且學??蒲邢嚓P數據能夠與全校公共數據庫實現數據實時交互,做到真正意義上的數據共享和統一?;诠蚕頂祿斓目蒲泄芾硐到y功能結構如下圖1所示。(2)MVC模式??蒲泄芾硐到y在邏輯上采用三層MVC模式,Model(模型)、View(視圖)、Controller(控制器),這三部分以最少的耦合協同工作,從而提高應用的可擴展性及可維護性。在MVC模式中,事件由控制器處理,控制器根據事件的類型改變模型或視圖。
2SSH框架結構模型
(1)SSH架構。SSH在JavaEE項目中表示了三種框架,即Spring、Struts和Hibernate。這三種框架都屬于JavaEE的開源輕量級企業開發框架。這里所提的“輕量級”是相對于以EJB為核心的復雜框架而言的。通過Spring耦合其他的開原產品進行合作開發,如:使用Struts框架充當表示層,Hibernate作為持久層,完成數據對的持久化操作,采用這種結構完成JavaEE的企業級Web開發。Struts是在MVC模式基礎上構架的Web應用程序的一種開源框架。在模型-視圖-控制器基礎上構建應用程序,使用自己提供的控制器組件(ActionController類)并與其它技術結合,共同提供模型和視圖部分組件。Struts作為表示層的成熟技術在市場上已經廣泛應用,可以很好地和Spring技術中間層緊密結合,Struts可以使用Spring提供的事務處理等特性。Spring按照資源管理的方法提供和Hibernate的集成及DAO實現和事物策略支持,Spring通過IOC機制和Hibernate集成,Spring能夠很好地支持開發人員選擇對象關系映射技術。
(2)SSH架構的科研管理系統的設計。SSH由3個開源的框架組合而成,表現層用Struts,Struts充當視圖層和控制層;業務層使用Spring,Spring通過控制反轉讓控制層間接調用業務邏輯層;持久層使用Hibernate框架,Hibernate充當數據訪問層。每個層在功能上指責明確,不與其他層混合,各層通過通信接口相互聯系。1)Struts負責Web層。ActionFormBean對象負責接收網頁中表單提交的數據,然后通過Action對象進行處理,再通過Forward對象跳轉到對應的網頁。其中Forward對象可以在配置文件struts-config.xml中進行定義,定以后ActionServlet核心配置文件則會自動讀取并進行加載跳轉信息;2)Spring負責業務層管理,即Service對象(或者Manager對象)Service對象為Action提供統計的調用接口,并且封裝持久層的DAO對象,還集成了Hibernate框架中的功能。Spring主要的任務是對所有JavaBean和事物進行統一的管理;3)Hibernate負責持久化層,完成數據的增刪改查操作。
Hibernate提供對象關系映射,使用配置文件*.hbm.xml和POJO實體對象,與關系數據庫中的表形成映射關系,采用這樣的方法,解決了面向對象的程序設計操作關系數據庫數據的接口不匹配問題。在SSH框架的系統中,對象的調用流程是:JSP調用Action對象,Action使用Service方法進行DAO操作,通過DAO連接Hibernate實現對數據庫的增刪改查操作。Datastream通常為通過調用ActionForm組件自動獲取用戶的數據,接著Action組件將Data從ActionFormBean對象中取出(數據自動從ActionForm組件存入ActionFormBean中),Data取出后,將其進行封裝或者實例化,再調用業務層的實體類(業務邏輯),完成多種實體類操作后再通過Forward對象將數據定位到需要的對象或者頁面中。業務邏輯層實例化操作收到這個實體對象之后,會自動調用DAO接口方法,進行持久化操作,完成整個流程。
3結束語
在傳統的JavaEE企業級開發中,EJB一直占據著主導的地位,但運行他需要一個龐大的容器,我們通常稱之為“重量級容器”。由于EJB暴露出的缺陷和復雜性,以“輕量級容器”為核心的架構SSH組合的開發解決了這個問題。SSH架構表示層使用Struts,業務層使用Spring,持久層使用Hibernate,使開發過程更加簡單、靈活,系統的維護也更加方便,使開發者更關注高層業務邏輯的實現,降低底層框架的設計考慮,提高了開發效率。
作者:李鑫 單位:石家莊職業技術學院 電氣與電子工程系