999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于S2SHA集成框架構建教師信息管理系統

2010-04-03 00:59:22趙峰
中國新技術新產品 2010年14期
關鍵詞:定義管理

趙峰

(哈爾濱理工大學,黑龍江 哈爾濱150080)

引言

軟件架構是一系列相關的抽象模式,用于指導大型軟件系統各個方面的設計。Java Web軟件架構是指基于Java EE技術構建的軟件架構,根據Java Web的分層設計可以選擇使用不同的軟件框架(Framework)進行實現。正因為有著如此豐富的框架和其它的輔助技術,使得我們在開發Java Web應用的時候,就要根據具體的業務需求來確定使用哪個框架哪種技術或哪幾種框架和技術進行集成,以使得我們開發、部署、運行和維護Java Web應用的成本降至最低。本文探討的就是如何根據具體的業務需求集成現有框架和技術,快速而有效地搭建應用系統。

1 Java Web框架技術

1.1 Struts2

Apache Struts 2是一個優雅的,用于創建企業級的Java Web應用程序的可擴展框架。該框架旨在簡化整個開發周期,涵蓋應用的開發,部署,以及維護的全過程。Struts2的核心包括FilterDispatcher、攔截器和Action以及展現用戶界面的Template和Tag,囊括了MVC模型的全部組成。

1.2 Spring是一個開源框架,它是為了解決企業應用程序開發復雜性而創建的。框架的主要優勢之一就是其分層架構,分層架構允許用戶選擇使用哪一個組件。這也是它與Struts、Hibernate等其他框架不同的地方。Spring框架的分層架構,由7個定義良好的模塊組成Spring模塊構建在核心容器之上,核心容器定義了創建、配置和管理Bean的方式。

1.3 Hibernate

Hibernate是一個面向Java環境的對象/關系數據庫映射工具,用來把對象模型表示的對象映射到基于SQL的關系模型數據結構中去。Hibernate不僅僅管理Java類到數據庫表的映射,還提供數據查詢和獲取數據的方法,可以大幅度減少開發時人工使用SQL和JDBC處理數據的時問。

1.4 Ajax

Ajax是基于標準Web技術創建的、能夠以更少的響應時間帶來豐富的用戶體驗的一類Web應用程序所使用的技術的集合。

DWR是實現Ajax技術的一個簡單選擇。DWR工作原理是通過動態把Java類生成為JavaScript,使用戶感覺調用發生在瀏覽器端,但實際代碼調用發生在服務器端,DWR負責數據的傳送和轉換。其優點在于不需要任何瀏覽器插件就能運行在網頁上。

圖1 S2SHA框架總體設計

2 S2SHA的集成

基于Struts2、Spring、Hibernate和Ajax集成的S2SHA框架總體設計如圖1所示。

其中,Web表現層使用Struts2的控制器FilterDispatcher負責管理用戶的請求和顯示用戶數據,頁面技術使用JSP+Ajax。JSP中包含傳統的頁面格式控制CSS文件。為了國際化字符信息,需要配置相應的.properties文件并在struts.xml文件中定義相應的控制器。

業務邏輯層使用Spring作為業務邏輯框架,通過讀取配置文件,Spring IoC容器自動生成和管理Bean實例,Spring還提供了事務管理,Action類實例的管理,基于Spring AOP的日志和權限管理等。

數據持久層采用Hibernate框架,提供從數據庫表到POJO對象的映射,屏蔽所有的數據庫操作。建立相應的DAO類,DAO類的實例由Spring容器管理。

總之,讓Strust2負責表現處理,讓Spring負責裝配和解耦復雜的業務邏輯處理對象,讓Hibernate負責處理O/R映射和持久化,讓Ajax來改進用戶體驗。

2.1 Struts2和Spring的集成

Struts2與Spring集成主要是利用Spring強大的容器功能,Struts2所需要的一切組件和實例都由Spring的IoC容器負責創建和管理其生命周期。這樣就解放了控制器,實現了控制器和業務邏輯組件的高層次解耦,控制器只是業務邏輯組件的使用者,只需向Spring容器請求既可,Spring容器會自動地將控制器需要的業務邏輯組件進行組裝。Struts2和Spring集成的步驟如下:

①在web.xml中注冊名為contextConfigLocation的context-param,值為/WEB-INF目錄下的applicationContext.xml文件;注冊listener:org.springframework.web.context.ContextLoaderListener和org.apache.struts2.dispatcher.Filter-Dispatcher。

②在struts.xml中注冊類似于name="honorlist"class="honorList"method="list"的action,其中,'class="honorList"'定義的是偽Action名。

③在applicationContext.xml中注冊Bean:

其 中,'bean name="honorList"'是對應struts.xml的偽Action名,后面的class是真正的Action類名。第二個bean是前邊Action組件所需要的業務邏輯組件,'autowire="byName"'給出了Spring的自動裝配方式。

2.2 Spring與Hibernate的集成

Spring為集成Hibernate,提供了3個工具類:HibernateDaoSupport、HibernateTemplate和HibernateCallback。同時,Spring負責管理Hibernate的SessionFactory bean和眾多DAO Bean。集成步驟如下:

①在applicationContext.xml中定義數據源,使用C3P0:

class="com.mchange.v2.c3p0.ComboPooledData-

Source"

destroy-method="close">

②定義SessionFactory

class="org.springframework.orm.hibernate3.Lo

calSessionFactoryBean">

org.hibernate.di

alect.MySQLDialect

③配置事務管理

class="org.springframework.orm.hibernate3.Hi

bernateTransactionManager">

然后在每個DAO類中加上@Transactional注解。

2.3 Ajax的集成

遵循由Spring管理一切bean的原則,DWR所使用的Java Bean也交由Spring容器統一管理,具體步驟如下:

①在web.xml中注冊DWR的servlet,其class是uk.ltd.getahead.dwr.DWRServlet。

②在dwr.xml中定義JavaScript類到服務器端的映射:

其中creator="spring"表示由Spring容器管理服務器端Suggest實例;value="suggest"表示Spring管理的Bean名稱。

③在applicationContext.xml中定義"suggest"Bean:

④在視圖頁面中引入

其中,'zf50'是項目的絕對路徑,'suggest.js'是自定義的函數文件,包含對Suggest對象的調用。

3 教師信息管理系統的設計

系統的業務結構如圖2所示

普通用戶和信息審核員對信息進行相互認證的活動圖如圖3,4所示:

4 教師信息管理系統在S2SHA集成框架下的實現

在表現層使用Struts2來實現MVC模式,輔以基于DWR框架的Ajax技術豐富用戶界面。Struts2使用web.xml中定義的FilterDispatcher攔截到表現層提交的請求,通過讀取struts.xml文件查找對應的Action,找到其對應的Action類,向Spring請求其實例,調用Action實例中相應的validate方法,然后調用Spring注入的相應Service實例的業務方法,Service實例再次調用Spring注入的DAO實例,逐級返回需要傳遞給表現層的值,然后根據邏輯視圖名進行跳轉,返回到表現層,展現響應。

系統運行效果如圖5所示。

5 總結

隨著越來越多的框架技術應用在Java EE企業級軟件開發當中,如何選取合適的框架和相關技術進行集成,是快速、有效、低成本的構建Java EE應用所面臨的問題。文本通過分析研究Java EE軟件架構的的發展變化和各種流行框架技術的原理和工作過程,提出一個集成Struts2、Spring和Hibernate并加入Ajax交互技術的快速開發WEB應用的軟件架構S2SHA模型。通過集成各個框架技術的優點來到達以最小代價開發最優軟件系統的目標。最后通過運用本文研究的S2SHA模型來實際開發一個應用系統,驗證這種集成技術是有效的,可以滿足快速開發WEB應用的需要,并能夠實現系統結構間的充分解耦,具有很好的可擴展和可移植性。

[1]DWR-Easy Ajax for JAVA[EB/OL].http://directwebremoting.org/dwr/index.html

[2]Spring Projects[EB/OL].http://www.springsource.org/

[3]The Apache Struts Project[EB/OL].http://struts.apache.org

[4]JBoss Hibernate[EB/OL].http://www.jboss.com/products/hibernate.

猜你喜歡
定義管理
棗前期管理再好,后期管不好,前功盡棄
今日農業(2022年15期)2022-09-20 06:56:20
永遠不要用“起點”定義自己
海峽姐妹(2020年9期)2021-01-04 01:35:44
定義“風格”
加強土木工程造價的控制與管理
如何加強土木工程造價的控制與管理
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
“這下管理創新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
人本管理在我國國企中的應用
現代企業(2015年8期)2015-02-28 18:54:47
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
山的定義
公務員文萃(2013年5期)2013-03-11 16:08:37
主站蜘蛛池模板: 亚洲天堂免费在线视频| 久久黄色视频影| 97精品久久久大香线焦| 久久综合色播五月男人的天堂| 99伊人精品| 国产无码精品在线播放| 久久综合丝袜长腿丝袜| www中文字幕在线观看| 四虎综合网| 香蕉综合在线视频91| 尤物国产在线| 人妻无码一区二区视频| 激情综合网址| 国模私拍一区二区三区| 91原创视频在线| 亚洲天堂在线视频| 中文国产成人精品久久| 丰满的少妇人妻无码区| 欧美亚洲一二三区| 久久亚洲综合伊人| 综合社区亚洲熟妇p| 欧美一级片在线| 欧美一区福利| 久久婷婷综合色一区二区| 国产男女免费完整版视频| 91毛片网| 国产亚洲精久久久久久无码AV | 国产中文一区a级毛片视频| 欧洲日本亚洲中文字幕| 亚洲第一视频网| 九色综合伊人久久富二代| 国产va视频| 亚洲无码一区在线观看| 免费激情网址| 久久www视频| 日本伊人色综合网| 国产日韩欧美在线视频免费观看| 国产精品免费电影| 久久精品娱乐亚洲领先| 久久永久免费人妻精品| 青青草国产在线视频| 日本免费一级视频| 亚洲精品国产成人7777| 91精品亚洲| a欧美在线| 一区二区三区精品视频在线观看| 三上悠亚在线精品二区| 色综合久久久久8天国| 成人午夜精品一级毛片| 亚洲二区视频| 99久久国产自偷自偷免费一区| 欧美国产日产一区二区| 91小视频在线播放| 久久黄色视频影| av在线5g无码天天| 欧美在线网| 日韩欧美中文| 五月激情婷婷综合| 国产91线观看| 亚洲国产综合第一精品小说| 免费毛片全部不收费的| 成人va亚洲va欧美天堂| 动漫精品啪啪一区二区三区| 日韩一级二级三级| 中文字幕波多野不卡一区| 亚洲无码不卡网| 精品精品国产高清A毛片| 婷婷开心中文字幕| 亚洲欧美日本国产综合在线 | 老熟妇喷水一区二区三区| 欧美国产精品拍自| 青青国产在线| 毛片免费视频| 久久国产成人精品国产成人亚洲| 9久久伊人精品综合| 久热中文字幕在线| Aⅴ无码专区在线观看| 日韩成人在线一区二区| 另类专区亚洲| 天天干伊人| 亚洲综合色区在线播放2019| 成人国产精品网站在线看|