***部分:WebWork2.1与Spring集成
公司主营业务:成都做网站、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出格尔木免费做网站回馈大家。
两种方法:
法一:先WebWork后Spring(利用webwork2-spring.jar集成)
该方法的执行顺序是在WeWork与Spring的集成过程中先WebWork,后Spring。
即,首先在xwork.xml中找到待执行的action,如果该action依赖其他bean,再到applicationContext.xml中查找被依赖的bean。
WebWork2的IoC功能实现是在xwork.xml中,指定action类与其他bean的依赖关系。即:
(1)xwork.xml文件
- com.ryandaigle.web.actions.MyAction">
myDAO - /success.jsp
(2)applicationContext.xml文件
- persistence.MyDAO" singleton="true" />
Webwork与Spring集成的具体步骤如下:
1. 下载以下文件:http://www.ryandaigle.com/pebble/images/webwork2-spring.jar
2. 配置xwork.xml
2.1 在xwork.xml中定义action时,采用external-ref来指定依赖的spring bean
- com.foo.Action">
someDao - /success.jsp
2.2 在 中指定外部引用解析器
- externalReferenceResolver="com.atlassian.xwork.
- ext.SpringServletContextReferenceResolver"/>
SpringServletContextReferenceResolver作用是在applicationContext.xml中解析外部引用的bean
2.3 增加一个拦截器,允许引用作为外部资源进行解析
- class="com.opensymphony.xwork.interceptor.
- ExternalReferencesInterceptor"/>
3. 在web.xml中配置Spring与XWork的外部解析器在同一个Web Context中工作
contextConfigLocation - classpath:/applicationContext.xml
org.springframework.web. - context.ContextLoaderListener
com.atlassian.xwork.ext. - ResolverSetupServletContextListener
***个侦听器是spring必需的,无论是否与WebWork集成,都要定义该侦听器;第二个侦听器是外部解析器所需要的,作用是通过ServletContext来取出Spring的ApplicationContext,作为WebWork与Spring的“桥梁”。
4.applicationContext.xml文件跟xwork.xml文件的存放路径一下,都在classpath下
在applicationContext.xml中定义被引用的bean
- persistence.MyDAO" singleton="true" />
说明:
如果不使用WebWork2,完全使用Spring,达到上述效果,在applicationContext.xml中采取类似定义:
法二:先Spring后WebWork(利用spring-xwork-integration.jar集成)
该方法在WebWork与Spring集成中执行的顺序是先Spring,后WebWork。即,首先由Spring负责wire所有的依赖关系,再由XWork来执行action。
注意:因为XWork为每个action调用生成一个新的类实例,action在Spring的applicationContext.xml中应该配置为prototype。
1. 配置SpringObjectFactory
(0)下载https://xwork-optional.dev.java.net/files/documents/1475/11992/spring-xwork-integration.jar
(1) 可以在web.xml配置
org.springframework.web. - context.ContextLoaderListener
com.opensymphony.xwork.spring. - SpringObjectFactoryListener
(2) 或者:在applicationContext.xml配置
- class="com.opensymphony.xwork.spring.
- SpringObjectFactory"
- init-method="initObjectFactory"/>
WebWork与Spring集成以上两种方法任选一种即可。
2. 在applicationContext.xml中定义bean
3. 在xwork.xml中定义action(注意action的class与bean的id相同)
view.jsp
说明:
该方法与WebWork 2.2中的方法基本相同。
第二部分:WebWork2.2与Spring的集成
Spring是WebWork2.2中***支持的IoC容器。
1 配置webwork.properties文件,指定spring作为webwork的IoC容器
webwork.objectFactory = spring
(1)默认的autowiring模式是:by name
即如果applicationContext.xml文件中的bean id与xwork.xml文件中的action name相同,
(2)如果要改为其他模式:
webwork.objectFactory.spring.autoWire = name|type|auto|constructor
2 配置web.xml文件,启动Spring侦听器
org.springframework.web. - context.ContextLoaderListener
3 在WEB-INF目录下增加applicationContext.xml文件
例:
- "http://www.springframework.org/dtd/spring-beans.dtd">
- ...
4 置由Spring来初始化action
4.1 在Spring的applicationContext.xml文件中配置bean(即action类)
4.2 将xwork.xml中的action的class属性,由class名改为Spring中定义的bean名
例如:
(1)applicationContext.xml中,定义bean id是bar
- singleton="false"/>
- ...
(2)xwork.xml中,action的class="bar",而不是通常的类名
- /secure" extends="default">
bar.ftl
网站题目:WebWork与Spring集成方法浅析
网站路径:http://www.shufengxianlan.com/qtweb/news18/224218.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联