为什么结合Spring与Struts2的时分,有必要界说Struts2 Bean的Scope

Struts2 本身是线程安全的,在默许的情况下会为每一个央求创建一个实例方针,这在一定程度上处理了servlet带来的线程安全的疑问。 Struts2的Bean在交给Spring IOC处理后,默许运用的是单例,全部央求运用同一Action,当Action中定义一些变量以接受参数时,或许进行验证时,往往会出现线程安全疑问。 比如:          Struts2的Action是单例,其间的Fi http://www.kp1234.info/linked/20130319.do eldError,actionerror中的错误信息会累加, 即使再次输入了正确的信息,也过不了验证。         Action中定义了User方针,央求A提交表单,填充User方针,央求B区分Action中User方针能否为空,不为空则加载(此时B央求所对应的User方针并未加载)         等等等等.... 所以在Spring 联系Struts2的时分,记住将Struts2 Bean 的Scope设置成prototype哦 @Controller
@Scope(BeanDefinition.SCOPE_PROTOTYPE)
public class UserAction extends ActionSupport { http://www.fpjinan.com/linked/20130319.do 
posted @ 2013-03-20 02:42  chinadiy197601  阅读(218)  评论(0编辑  收藏  举报