Struts2和Spring整合时使用Struts-plugin的注意点
2015-06-11 15:41
387 查看
Struts2和Spring整合有两种方法可以使用:
一种是把Struts2的action交给Spring管理,action的配置中不需要指具体的类名,只需要指定配置在Spring中的那个action的id即可
另外一种是使用Struts2-plugin插件,把Action的创建交给Struts2,而其中的成员属性将按照byName(默认)的规则进行注入
第一种方法就和平常使用Spring进行管理一般的bean一样,只需要在配置中配置好就OK了,然后Action该怎么使用就怎么使用
而第二种方法比较不一样,这时候的成员属性,只要写了set方法之后,会找到对应名字的bean,然后注入进来
这时候有如下情况
1.有set方法,注入成功
2.有set方法,且在set方法上指定@Resource注解,并指定别的名字,注入成功
3.有set方法,且在属性上指定@Resource注解,并指定别的名字,注入成功
4.无set方法,注入失败
5.无set方法,且在属性上指定@Resource注解,并指定别的名字,注入成功
所以在使用Struts-plugin的时候,需要注意这一点,虽然没有指定@Autowired,但是这会隐含这一操作
一种是把Struts2的action交给Spring管理,action的配置中不需要指具体的类名,只需要指定配置在Spring中的那个action的id即可
另外一种是使用Struts2-plugin插件,把Action的创建交给Struts2,而其中的成员属性将按照byName(默认)的规则进行注入
第一种方法就和平常使用Spring进行管理一般的bean一样,只需要在配置中配置好就OK了,然后Action该怎么使用就怎么使用
而第二种方法比较不一样,这时候的成员属性,只要写了set方法之后,会找到对应名字的bean,然后注入进来
这时候有如下情况
1.有set方法,注入成功
2.有set方法,且在set方法上指定@Resource注解,并指定别的名字,注入成功
3.有set方法,且在属性上指定@Resource注解,并指定别的名字,注入成功
4.无set方法,注入失败
5.无set方法,且在属性上指定@Resource注解,并指定别的名字,注入成功
所以在使用Struts-plugin的时候,需要注意这一点,虽然没有指定@Autowired,但是这会隐含这一操作
相关文章推荐
- org.springframework.web.multipart.MultipartException: The current request is not a multipart request
- struts 2吊牌s:if 、s:iterator注意
- java多线程线程通信
- selenium rc入门以及简单示例
- Spring Validation
- eclipse学习一 如何创建web工程
- Eclipse ADT 中自动提示的方法参数都是arg0, arg1的解决方法
- Eclipse下使用git和github
- struts2 注解配置
- Java多线程
- java 多线程 同步的问题
- jdk环境变量
- Spring线程池开发
- eclipse里面找不到server选项
- java对象的序列化和反序列化
- Java 线程run start区别
- spring quartz使用多线程并发“陷阱”(转)
- 解决myeclipse部署web项目时报错
- java.lang.NoClassDefFoundError:org/bouncycastle/jce/provider/BouncyCastl
- Eclipse将引用了第三方jar包的Java项目打包成jar文件的两种方法