struts 2整合spring要注意的问题(二)
在 struts2_spring_plugin.xml配置文件里有一个strus.objectFactory.spring.autoWire 属性 默认值为name 也就是说你不想装载。它都会找个id为name的bean给你装载上(这个插件在产生Action的时候它会自己主动的把action的属性给注入进来,默认是按name注入),比方说:
@Resource(name="userManager")
public void setUm(UserManager um) {
this.um = um;
}
假设你没加前面的@Resource(name="userManager") 。它也会自己主动去给你找一个id是um的bean给你注入。
另一点就是。若已经通过name自己主动匹配找了一个bean那么不论在@component(name=“xxxx”)的name配什么都不会再去找了。
解决这个问题:属性名不要和其它无关的bean的id同样,比方说UserAction里面有个User(SetUser())那么这个UserAction就不要叫 @Resource(name="user")了。能够改为
@Resource(name="useraction") ,也就是说Action的id不要与里面的属性重名
posted on 2019-04-08 12:42 xfgnongmin 阅读(78) 评论(0) 编辑 收藏 举报