struts2的Action线程安全问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2的Action线程安全问题相关的知识,希望对你有一定的参考价值。

1) Struts2会对每一个请求,产生一个Action的实例来处理. 

2) Spring的Ioc容器管理的bean默认是单实例的. 

首先从数据安全性的问题上考虑,我们的Action应该保证是多例的,这样才不会出现数据问题。但是如果有的action比如只有admin才能操作,或者某些action,全站公用一个来提高性能,这样的话,就可以使用单例模式。 

不过幸好,Spring的bean可以针对每一个设置它的scope,所以,上面的问题就不是问题了。如果用多例,就在spring的action bean配置的时候设置scope=”prototype”

3)如何让struts2的Action变成多例

在spring配置文件中<bean id="Action" class="" scope="singleton"/>

使用注解在Action上@Scope("singleton")


本文出自 “12212886” 博客,请务必保留此出处http://12222886.blog.51cto.com/12212886/1946553

以上是关于struts2的Action线程安全问题的主要内容,如果未能解决你的问题,请参考以下文章

浅析Struts1和Struts2的Action线程安全问题

浅析Struts1和Struts2的Action线程安全问题

mybatis入门截图二

Action / controller

多线程不可变对象设计模式immutable

struts和struts2的区别