日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
整合Struts和Spring

您肯定已經(jīng)聽(tīng)說(shuō)過(guò)控制反轉(zhuǎn) (IOC) 設(shè)計(jì)模式,因?yàn)楹荛L(zhǎng)一段時(shí)間以來(lái)一直在流傳關(guān)于它的信息。如果您在任何功能中使用過(guò) Spring 框架,那么您就知道其原理的作用。在本文中,我利用這一原理把一個(gè) Struts 應(yīng)用程序注入 Spring 框架,您將親身體會(huì)到 IOC 模式的強(qiáng)大。

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括昭通網(wǎng)站建設(shè)、昭通網(wǎng)站制作、昭通網(wǎng)頁(yè)制作以及昭通網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,昭通網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到昭通省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

將一個(gè) Struts 應(yīng)用程序整合進(jìn) Spring 框架具有多方面的優(yōu)點(diǎn)。首先,Spring 是為解決一些關(guān)于 JEE 的真實(shí)世界問(wèn)題而設(shè)計(jì)的,比如復(fù)雜性、低性能和可測(cè)試性,等等。第二,Spring 框架包含一個(gè) AOP 實(shí)現(xiàn),允許您將面向方面技術(shù)應(yīng)用于面向?qū)ο蟮拇a。第三,一些人可能會(huì)說(shuō) Spring 框架只有處理 Struts 比 Struts 處理自己好。但是這是觀點(diǎn)問(wèn)題,我演示三種將 Struts 應(yīng)用程序整合到 Spring 框架的方法后,具體由您自己決定使用哪一種。

我所演示的方法都是執(zhí)行起來(lái)相對(duì)簡(jiǎn)單的,但是它們卻具有明顯不同的優(yōu)點(diǎn)。我為每一種方法創(chuàng)建了一個(gè)獨(dú)立而可用的例子,這樣您就可以完全理解每種方法。請(qǐng)參閱 下載 部分獲得完整例子源代碼。請(qǐng)參閱 參考資料,下載 Struts MVC 和 Spring 框架。

為什么 Spring 這么了不起?

Spring 的創(chuàng)立者 Rod Johnson 以一種批判的眼光看待 Java? 企業(yè)軟件開(kāi)發(fā),并且提議很多企業(yè)難題都能夠通過(guò)戰(zhàn)略地使用 IOC 模式(也稱作依賴注入)來(lái)解決。當(dāng) Rod 和一個(gè)具有奉獻(xiàn)精神的開(kāi)放源碼開(kāi)發(fā)者團(tuán)隊(duì)將這個(gè)理論應(yīng)用于實(shí)踐時(shí),結(jié)果就產(chǎn)生了 Spring 框架。簡(jiǎn)言之,Spring 是一個(gè)輕型的容器,利用它可以使用一個(gè)外部 XML 配置文件方便地將對(duì)象連接在一起。每個(gè)對(duì)象都可以通過(guò)顯示一個(gè) JavaBean 屬性收到一個(gè)到依賴對(duì)象的引用,留給您的簡(jiǎn)單任務(wù)就只是在一個(gè) XML 配置文件中把它們連接好。

依賴注入是一個(gè)強(qiáng)大的特性,但是 Spring 框架能夠提供更多特性。Spring 支持可插拔的事務(wù)管理器,可以給您的事務(wù)處理提供更廣泛的選擇范圍。它集成了領(lǐng)先的持久性框架,并且提供一個(gè)一致的異常層次結(jié)構(gòu)。Spring 還提供了一種使用面向方面代碼代替正常的面向?qū)ο蟠a的簡(jiǎn)單機(jī)制。

Spring AOP 允許您使用攔截器 在一個(gè)或多個(gè)執(zhí)行點(diǎn)上攔截應(yīng)用程序邏輯。加強(qiáng)應(yīng)用程序在攔截器中的日志記錄邏輯會(huì)產(chǎn)生一個(gè)更可讀的、實(shí)用的代碼基礎(chǔ),所以攔截器廣泛用于日志記錄。您很快就會(huì)看到,為了處理橫切關(guān)注點(diǎn),Spring AOP 發(fā)布了它自己的攔截器,您也可以編寫您自己的攔截器。

整合 Struts 和 Spring

與 Struts 相似,Spring 可以作為一個(gè) MVC 實(shí)現(xiàn)。這兩種框架都具有自己的優(yōu)點(diǎn)和缺點(diǎn),盡管大部分人同意 Struts 在 MVC 方面仍然是最好的。很多開(kāi)發(fā)團(tuán)隊(duì)已經(jīng)學(xué)會(huì)在時(shí)間緊迫的時(shí)候利用 Struts 作為構(gòu)造高品質(zhì)軟件的基礎(chǔ)。Struts 具有如此大的推動(dòng)力,以至于開(kāi)發(fā)團(tuán)隊(duì)寧愿整合 Spring 框架的特性,而不愿意轉(zhuǎn)換成 Spring MVC。沒(méi)必要進(jìn)行轉(zhuǎn)換對(duì)您來(lái)說(shuō)是一個(gè)好消息。Spring 架構(gòu)允許您將 Struts 作為 Web 框架連接到基于 Spring 的業(yè)務(wù)和持久層。最后的結(jié)果就是現(xiàn)在一切條件都具備了。

在接下來(lái)的小竅門中,您將會(huì)了解到三種將 Struts MVC 整合到 Spring 框架的方法。我將揭示每種方法的缺陷并且對(duì)比它們的優(yōu)點(diǎn)。 一旦您了解到所有三種方法的作用,我將會(huì)向您展示一個(gè)令人興奮的應(yīng)用程序,這個(gè)程序使用的是這三種方法中我最喜歡的一種。

三個(gè)小竅門

接下來(lái)的每種整合技術(shù)(或者竅門)都有自己的優(yōu)點(diǎn)和特點(diǎn)。我偏愛(ài)其中的一種,但是我知道這三種都能夠加深您對(duì) Struts 和 Spring 的理解。在處理各種不同情況的時(shí)候,這將給您提供一個(gè)廣闊的選擇范圍。方法如下:

◆使用 Spring 的 ActionSupport 類整合 Structs
◆使用 Spring 的 DelegatingRequestProcessor 覆蓋 Struts 的 RequestProcessor
◆將 Struts Action 管理委托給 Spring 框架

裝載應(yīng)用程序環(huán)境

無(wú)論您使用哪種技術(shù),都需要使用 Spring 的 ContextLoaderPlugin 為 Struts 的 ActionServlet 裝載 Spring 應(yīng)用程序環(huán)境。就像添加任何其他插件一樣,簡(jiǎn)單地向您的 struts-config.xml 文件添加該插件,如下所示:

 
 
 
  1.  className=
  2.   "org.springframework.web.struts.ContextLoaderPlugIn">
  3.      property=
  4.       "contextConfigLocation" value="/WEB-INF/beans.xml"/>
  5.  

前面已經(jīng)提到過(guò),在 下載 部分,您能夠找到這三個(gè)完全可使用的例子的完整源代碼。每個(gè)例子都為一個(gè)書(shū)籍搜索應(yīng)用程序提供一種不同的 Struts 和 Spring 的整合方法。您可以在這里看到例子的要點(diǎn),但是您也可以下載應(yīng)用程序以查看所有的細(xì)節(jié)。


網(wǎng)站欄目:整合Struts和Spring
網(wǎng)站路徑:http://www.5511xx.com/article/dhohegd.html