夏道春
(山東科技職業(yè)學院,山東 濰坊 261053)
基于Struts的Web應(yīng)用程序?qū)崿F(xiàn)了MVC框架,主要分為模型(Model)、視圖(Viewer)和控制器(Controller)三部分,其主要的設(shè)計理念是通過控制器將表現(xiàn)邏輯和業(yè)務(wù)邏輯解耦,以提高系統(tǒng)的可維護性、可擴展性和可重用性。
Spring是一個提供了全面的解決方案的輕量級的框架,由七個定義明確的模塊組成,且每個模塊或組件都可以單獨存在,或者與其他一個或多個模塊聯(lián)合實現(xiàn)。其中 Spring的 Spring Core 作為依賴注入容器的部分,是Spring應(yīng)用的核心;Spring AOP 面向方面編程提供了將程序分解成各個方面或關(guān)注點的設(shè)計思想,也是Spring的一個核心組件;Spring DAO和Spring ORM 不僅提供數(shù)據(jù)訪問的抽象模塊,還集成了對 Hibernate、JDO等流行的對象關(guān)系映射框架的支持模塊,并且提供了緩沖連接池、事務(wù)處理等重要的服務(wù)功能,保證了系統(tǒng)的性能和數(shù)據(jù)的完整性。
對象關(guān)系映射(O/R mapping)技術(shù)是為了解決關(guān)系型數(shù)據(jù)庫和面向?qū)ο蟮某绦蛟O(shè)計之間不匹配的矛盾而產(chǎn)生的。Hibernate是目前最為流行的O/R mapping框架,它在關(guān)系型數(shù)據(jù)庫和Java對象之間做了一個自動映射,使得程序員可以以非常簡單的方式實現(xiàn)對數(shù)據(jù)庫的操作。
為加強高職學院的網(wǎng)絡(luò)教育,筆者基于SSH框架技術(shù)開發(fā)了教學管理平臺。教學管理平臺在本院的成功應(yīng)用,驗證了這種多框架結(jié)合開發(fā)技術(shù)的可行性、可擴展性及可靠性等優(yōu)點。本教學管理平臺是一個面向高職學院教師、學生和維護人員的網(wǎng)絡(luò)管理平臺。
由于系統(tǒng)的模塊較多,下面以一個管理員登陸模塊為例來說明系統(tǒng)的開發(fā)實現(xiàn)過程,并將按照數(shù)據(jù)持久層、數(shù)據(jù)訪問層,業(yè)務(wù)邏輯層、表示層的順序說明系統(tǒng)構(gòu)建過程。
2.2.1 持久層實現(xiàn)
根據(jù)數(shù)據(jù)庫的表manager生成Manager.hbm.xml映射文件。映射文件部分代碼:
2.2.2 數(shù)據(jù)訪問層DAO(接口)的實現(xiàn)和業(yè)務(wù)邏輯層的實現(xiàn)
完成持久層的ORM框架搭建后,在Sping 的運用中,遵循面向接口編程的面向?qū)ο蟮脑瓌t,編寫了接口名Manager Dao及其接口的實現(xiàn)類Manager Dao Hibernate。
該接口代碼如下:
2.2.3 表示層
表示層結(jié)合JSP和Struts的Tag Lib庫處理顯示功能,利用Action Servlet將請求(*.do)映射到相應(yīng)的Action,并由Action調(diào)用業(yè)務(wù)邏輯的服務(wù)組件,然后根據(jù)處理結(jié)果跳轉(zhuǎn)到 For word對象指定的響應(yīng)頁面。業(yè)務(wù)流程的部署由struts-con fig.xml完成。下面以顯示管理員登陸信息的請求(List User.do)為例來說明配置文件的使用。
本文將輕量級框架組合SSH應(yīng)用于教學管理平臺開發(fā)研究與設(shè)計上,三種框架的組合使得系統(tǒng)具有更佳的可維護性與可擴展性,充分體現(xiàn)了三者的優(yōu)勢與帶來的好處,實現(xiàn)了教學管理平臺系統(tǒng)開發(fā)的松耦合,教學管理平臺于2009年正式啟用,成為廣大教師、學生實現(xiàn)網(wǎng)絡(luò)教學互動的一種有效手段,為學生自主學習搭建了良好平臺。
1 張峰.基于Ajax技術(shù)與J2EE框架的Web應(yīng)用研究與實現(xiàn)[D].中國地質(zhì)大學(北京),2008