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,但是这会隐含这一操作