日韩无码专区无码一级三级片|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)銷(xiāo)解決方案
WebWork與Spring集成方法淺析

***部分:WebWork2.1與Spring集成

公司主營(yíng)業(yè)務(wù):成都做網(wǎng)站、成都網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)公司推出格爾木免費(fèi)做網(wǎng)站回饋大家。

兩種方法:

法一:先WebWork后Spring(利用webwork2-spring.jar集成)

該方法的執(zhí)行順序是在WeWork與Spring的集成過(guò)程中先WebWork,后Spring。

即,首先在xwork.xml中找到待執(zhí)行的action,如果該action依賴其他bean,再到applicationContext.xml中查找被依賴的bean。

WebWork2的IoC功能實(shí)現(xiàn)是在xwork.xml中,指定action類(lèi)與其他bean的依賴關(guān)系。即:

(1)xwork.xml文件

 
 
 
  1. com.ryandaigle.web.actions.MyAction">  
  2. myDAO  
  3.  
  4. /success.jsp  
  5.  
  6.  

(2)applicationContext.xml文件

 
 
 
  1. persistence.MyDAO" singleton="true" />  

Webwork與Spring集成的具體步驟如下:

1. 下載以下文件:http://www.ryandaigle.com/pebble/images/webwork2-spring.jar

2. 配置xwork.xml

2.1 在xwork.xml中定義action時(shí),采用external-ref來(lái)指定依賴的spring bean

 
 
 
  1. com.foo.Action">  
  2. someDao  
  3.  
  4.  
  5. /success.jsp  
  6.  
  7.  

2.2 在 中指定外部引用解析器

 
 
 
  1. externalReferenceResolver="com.atlassian.xwork.  
  2. ext.SpringServletContextReferenceResolver"/> 

SpringServletContextReferenceResolver作用是在applicationContext.xml中解析外部引用的bean

2.3 增加一個(gè)攔截器,允許引用作為外部資源進(jìn)行解析

 
 
 
  1.  
  2. class="com.opensymphony.xwork.interceptor.  
  3. ExternalReferencesInterceptor"/>  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  

3. 在web.xml中配置Spring與XWork的外部解析器在同一個(gè)Web Context中工作

 
 
 
  1.  
  2.  
  3. contextConfigLocation  
  4.  
  5.  
  6. classpath:/applicationContext.xml  
  7.  
  8.  
  9.  
  10. org.springframework.web.  
  11. context.ContextLoaderListener  
  12.  
  13.  
  14. com.atlassian.xwork.ext.  
  15. ResolverSetupServletContextListener  
  16.  

***個(gè)偵聽(tīng)器是spring必需的,無(wú)論是否與WebWork集成,都要定義該偵聽(tīng)器;第二個(gè)偵聽(tīng)器是外部解析器所需要的,作用是通過(guò)ServletContext來(lái)取出Spring的ApplicationContext,作為WebWork與Spring的“橋梁”。

4.applicationContext.xml文件跟xwork.xml文件的存放路徑一下,都在classpath下

在applicationContext.xml中定義被引用的bean

 
 
 
  1. persistence.MyDAO" singleton="true" /> 

說(shuō)明:

如果不使用WebWork2,完全使用Spring,達(dá)到上述效果,在applicationContext.xml中采取類(lèi)似定義:

 
 
 
  1. web.actions.MyAction" singleton="false">  
  2.  
  3.  
  4.  
  5. MyDAO" singleton="true" /> 

法二:先Spring后WebWork(利用spring-xwork-integration.jar集成)

該方法在WebWork與Spring集成中執(zhí)行的順序是先Spring,后WebWork。即,首先由Spring負(fù)責(zé)wire所有的依賴關(guān)系,再由XWork來(lái)執(zhí)行action。

注意:因?yàn)閄Work為每個(gè)action調(diào)用生成一個(gè)新的類(lèi)實(shí)例,action在Spring的applicationContext.xml中應(yīng)該配置為prototype。

1. 配置SpringObjectFactory

(0)下載https://xwork-optional.dev.java.net/files/documents/1475/11992/spring-xwork-integration.jar

(1) 可以在web.xml配置

 
 
 
  1.  
  2. org.springframework.web.  
  3. context.ContextLoaderListener  
  4.  
  5.  
  6.  
  7. com.opensymphony.xwork.spring.  
  8. SpringObjectFactoryListener  
  9.  
  10.  

(2) 或者:在applicationContext.xml配置

 
 
 
  1. class="com.opensymphony.xwork.spring.  
  2. SpringObjectFactory"  
  3. init-method="initObjectFactory"/> 

WebWork與Spring集成以上兩種方法任選一種即可。

2. 在applicationContext.xml中定義bean

 
 
 
  1. qualified.class.name" singleton="false">  
  2.  
  3.  
  4.  
  5.  

3. 在xwork.xml中定義action(注意action的class與bean的id相同)

 
 
 
  1.  
  2. view.jsp  
  3.  
  4.  

說(shuō)明:

該方法與WebWork 2.2中的方法基本相同。

第二部分:WebWork2.2與Spring的集成

Spring是WebWork2.2中***支持的IoC容器。

1 配置webwork.properties文件,指定spring作為webwork的IoC容器

webwork.objectFactory = spring

(1)默認(rèn)的autowiring模式是:by name

即如果applicationContext.xml文件中的bean id與xwork.xml文件中的action name相同,

(2)如果要改為其他模式:

webwork.objectFactory.spring.autoWire = name|type|auto|constructor

2 配置web.xml文件,啟動(dòng)Spring偵聽(tīng)器

 
 
 
  1.  
  2. org.springframework.web.  
  3. context.ContextLoaderListener  
  4.  
  5.  

3 在WEB-INF目錄下增加applicationContext.xml文件

例:

 
 
 
  1.  
  2. "http://www.springframework.org/dtd/spring-beans.dtd">  
  3.  
  4.  
  5. ...  
  6.  

4 置由Spring來(lái)初始化action

4.1 在Spring的applicationContext.xml文件中配置bean(即action類(lèi))

4.2 將xwork.xml中的action的class屬性,由class名改為Spring中定義的bean名

例如:

(1)applicationContext.xml中,定義bean id是bar

 
 
 
  1.  
  2. singleton="false"/>  
  3. ...  
  4.  

(2)xwork.xml中,action的class="bar",而不是通常的類(lèi)名

 
 
 
  1. /secure" extends="default">  
  2.  
  3. bar.ftl  
  4.  
  5.  

分享標(biāo)題:WebWork與Spring集成方法淺析
分享地址:http://www.5511xx.com/article/cddeeig.html