国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于輕量級整合框架的電子校歷系統

2015-12-17 01:53高瞻賈向煒李雪琴徐菲
電腦知識與技術 2015年28期
關鍵詞:框架

高瞻 賈向煒 李雪琴 徐菲

摘要:該文通過對基于java 的三種框架Struts2,Spring和IBatis的研究,提出了基于Struts2+Spring + IBatis的輕量級整合開發(fā)框架,并給出了詳細的實現方法。三種框架的組合可以實現Web應用的分層,能夠充分發(fā)揮三種框架各自的優(yōu)勢,提高系統的開發(fā)效率。該整合開發(fā)框架已經成功應用于電子校歷系統。

關鍵詞:Spring; Struts2; IBatis;框架

中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2015)27-0056-03

Abstract:Base on a brief reseacrch of the three frameworks Spring,Struts2 and IBatis,the paper raises an idea of the Struts2+Spring+IBatis development framework,and gives the implementation details。The combination of three types of framworks can realize the tired application, giving full play to their strengths of the three frameworks, improving efficiency, and is easy for system expansion and maintenance.The integration framework has been successfully applied to E-school Calendar.

Key words: spring;struts2; ibatis;framework

近年來隨著我國高等教育的不斷改革和蓬勃發(fā)展,大學生校園活動也日益豐富多彩,利用信息化手段將各種分散校園活動和教育活動資源實現共享是促進高等教育發(fā)展的重要途徑。電子校歷系統能夠定期從指定頁面抓取信息,并以日歷的形式,按照天、周、月為全校師生提供了教學、講座、會議等各類信息,提高了信息的記錄、查閱以及傳播速度,并且成本低,效率高,互動性強。。

本文結合Struts 2、Spring、IBatis技術, 提出了基于J2EE平臺B/S結構的電子校歷系統。該系統實現了表示層、業(yè)務層、持久層間的松耦合, 提高了代碼的復用性,增強了系統的靈活性和可維護性, 最終提高了軟件的質量。

1 Struts2框架

S t r u t s2 是開發(fā)基于模型( M o d e l ) -視圖( V i e w )- 控制器(Controller) (MVC) 模式的應用架構的開源框架[1]。Struts2以WebWork為設計核心,允許用戶的業(yè)務邏輯控制器與Servlet API分離,用戶的請求由大量攔截器來處理。圖1是Struts2的體系結構圖。

當瀏覽器發(fā)送了請求后,Struts2攔截器鏈攔截請求并加以處理,核心控制器FilterDispatcher根據請求決定調用合適的Action,Action將處理結果的邏輯視圖返回,最后Struts2框架將邏輯視圖映射成實際路徑。Struts2框架結構圖如圖1所示。

2 Spring框架

Spring是一個開源框架,為簡化企業(yè)級系統開發(fā)而誕生的輕量級解決方案[2],可建立“快裝式企業(yè)應用”。 Spring是輕量級的框架,簡單來說,它完全可以在只有1M多大小的JAR文件里發(fā)布,而且所需的處理開銷也很小。 它可以獨立于各種應用服務器,也能提供應用服務器的功能,如聲明式事務等。除此之外,還提供了多種方法進行的持久化數據庫的解決方案。Spring具有的這些特點使開發(fā)者只需要關注業(yè)務邏輯的開發(fā)即可,代碼編寫更干凈且易于測試。

3 IBatis框架

IBatis框架能為Java 應用提供更好地設計并實現數據持久層[3],它由SQL Maps 、DAO(Data Access Object, 數據訪問對象)及一些實用工具組成。SQL Maps是IBatis Database Layer 架構最重要的組件[4], 它由簡單的XML 配置文件將Java Bean 映射成SQL 語句,極大地減少訪問數據庫的代碼。利用DAO 可以使開發(fā)者在不知道數據訪問層的實現得情況下使用簡單的接口組件訪問數據庫,為系統設計提供了更大的自由空間。

4 系統的設計與實現

4.1系統功能設計

通過對校歷使用群體的調查,并結合這些群體使用校歷的實際情況,可將電子校歷系統劃分為用戶管理、節(jié)假日管理、通知公告管理、每周會議管理等八個功能模塊,系統的總體功能劃分如圖2所示。

4.2基于Struts2+Spring+IBatis整合框架的系統架構設計

系統體系架構是開發(fā)復雜應用系統的關鍵。在J2EE平臺下開發(fā)Web項目需要同時滿足系統的功能性和非功能性需求,均衡兩者之間的矛盾。本系統采用基于Struts2+Spring+IBatis的整合框架,充分發(fā)揮三種框架各自的優(yōu)勢,而且提高系統的開發(fā)效率,實現了B/S模式的多層Web應用。整合框架的系統架構圖如圖3所示。

如圖所示,表示層Struts2利用核心控制器FilterDispatcher攔截了用戶的所有請求,分析URL地址后調用相應Action類處理[5],Action則調用相應的業(yè)務邏輯組件來處理。Spring在運行期利用依賴注入機制將組件之間的依賴關系注入到組件中,使各應用組件以松耦合的方式組織在一起,提高了系統的靈活性和可擴展性。作為持久層的IBatis框架利用其配置文件Config.xml與Spring框架整合在一起工作。

4.3系統實現

4.3.1基于struts2框架的表示層的實現

本系統的表示層是基于Struts2 框架,由JSP頁面、Action類、web.xml、struts.xml配置文件等構成。所有的用戶發(fā)出的請求都由Struts 2的核心控制器FilterDispatcher攔截, 并將所有請求轉入到Struts2框架中, 調用相應的Action類來處理,Struts 2的核心控制器根據Action類返回處理結果的邏輯視圖, 結合struts.xml的配置, 將邏輯視圖映射成實際路徑。struts.xml 的部分代碼如下:

/front/festival.jsp

其中action的name屬性值為ajaxGetFestival,它的class屬性為applicationContext.xml中的bean 的id值。如,這樣使得Struts2框架與Spring框架整合起來。Action方法處理后將返回一個字符串, 一個字符串對應一個邏輯視圖。如果list action返回的字符串是SUCCESS,則表示業(yè)務邏輯處理成功,它對應result子元素的name屬性success,而該success將對應一個顯示視圖/front/festival.jsp。 通過在struts.xml文件配置struts2的攔截還可以實現輸入校驗、防止表單的重復提交、身份驗證等操作。

4.3.2基于Spring框架的業(yè)務邏輯層的實現

在本系統中,通過應用Spring 的依賴注入、Spring DAO模式、IoC容器、面向接口編程來處理應用程序的業(yè)務邏輯和業(yè)務校驗等功能[6]。Spring 通過配置文件applicationContext.xml 來配置各個業(yè)務對象與持久化對象的關系,并管理對象的創(chuàng)建與銷毀,部分核心代碼如下:

猜你喜歡
框架
框架
廣義框架的不相交性
WTO框架下
關于原點對稱的不規(guī)則Gabor框架的構造
一種基于OpenStack的云應用開發(fā)框架
基于Hadoop的DDoS檢測框架