Struts2 action与String bean的单例与多例
来源:互联网 发布:windows怎么升级win10 编辑:程序博客网 时间:2024/06/10 11:14
Struts2 action的单例与多例
struts 2的Action是多实例的并非单例,也就是每次请求产生一个Action的对象。原因是:struts 2的Action中包含数据,例如你在页面填写的数据就会包含在Action的成员变量里面。如果Action是单实例的话,这些数据在多线程的环境下就会相互影响,例如造成别人填写的数据被你看到了。所以Struts2的Action是多例模式的。
问题出现了,可以让struts2的action变成单例模式么?我在使用spring来生成action的时候,发现生成的action居然全是单例的。这不是让我的程序默认就跑出bug来么?上个用户提交的信息,如果下个用户没填,居然跑到上个用户输入的信息去了。
背景 :
1) Struts2 会对每个浏览器,产生一个Action的实例来处理.
2) Spring的Ioc容器管理的bean默认是单实例的.
首先从数据安全性的问题上考虑,我们的Action应该保证是多例的,这样才不会出现数据问题。但是如果有的action比如只有admin才能操作,或者某些action,全站公用一个来提高性能,这样的话,就可以使用单例模式。
不过幸好,Spring的bean可以针对每一个设置它的scope,所以,上面的问题就不是问题了。如果用多例,就在spring的action bean配置的时候设置scope=”prototype”.好吧,问题到此结束。
- <!–多例–>
- <bean id=“localFileTaskConFigureAction” class=“com.top.fgap.localfiletask.action.LocalFileTaskConAction” scope=“prototype”>
- <property name=“localFileTaskConfigureService”>
- <ref bean=“localFileTaskConfigureService”/>
- </property>
- </bean>
- <!–默认情况下是单例–>
- <bean id=“locFTIpFilterAction” class=“com.top.fgap.localfiletask.action.LocFTIpFilterAction”>
- <property name=“localIpFilterService”>
- <ref bean=“locFTIpFilterService”/>
- </property>
- </bean>
本文转载于:
http://blog.csdn.net/jerry191/article/details/52228700
阅读全文
0 0
- Struts2 action与String bean的单例与多例
- Struts2 action的单例与多例
- Struts2 action的单例与多例
- Struts2 action的单例与多例
- Struts2 action的单例与多例
- Struts2中Action的单例与多例
- Struts2 action的单例与多例
- struts2单例Action带来的问题与思考
- struts2单例Action带来的问题与思考
- Spring的原型Bean与单例Bean的设置
- Spring的原型Bean与单例Bean的设置
- 使用Spring的单例创建Struts2 action Bean的问题
- Spring单例Bean与单例模式的区别
- 011. Spring Bean单例与非单例
- spring bean scope 单例与多例
- Struts2 action与action之间的跳转
- struts2与spring集成时,关于Action类中成员bean自动注入的问题
- struts2与spring集成时,关于Action类中成员bean自动注入的问题
- 对pthread_create未定义的引用
- Period of an Infinite Binary Expansion POJ
- C++再谈拷贝构造函数。(深拷贝,浅拷贝)
- Vue.js移动端左滑demo和JS事件监听手机屏幕触摸事件 Touch
- windows核心编程之线程内核对象同步(2)
- Struts2 action与String bean的单例与多例
- 如何高效的阅读hadoop源代码?
- 心理咨询预约系统
- 4. Median of Two Sorted Arrays(divide and conquer)
- MySQL 命令记录
- 一些思索 关于有环图的最长路
- 【数据结构】第二章 线性表
- 进程间通信——消息队列
- LinuxStudyNote(34)-Linux常用命令(9)shutdown关机重启命令