放置江湖初始悟性:struts spring action应配置为scope="prototype"
来源:百度文库 编辑:中财网 时间:2024/05/04 21:56:50
struts+spring action应配置为scope="prototype"
scope="prototype" class="quickstart.action.PersonAction">
在配置文件中,bean默认是单例模式,应用服务器启动后就会立即创建bean,以后就可以重复使用。
这带来一个问题,bean的全局变量被赋值以后,在下一次使用时会把值带过去。也就是说,bean是有状态的。
在web状态下,请求是多线程的,全局变量可能会被不同的线程修改,尤其在并发时会带来意想不到的bug。
而在开发时,访问量很小,不存在并发、多线程的问题,程序员极有可能会忽视这个问题。
所以在配置action bean时,应使用scope="prototype",为每一次request创建一个新的action实例。这
符合struts2的要求,struts2为每一个request创建一个新的action实例。当request结束,bean就会被jvm
销毁,作为垃圾收回。
当然,也可以设置scope="session",也能避免web中action的并发问题,只为当前用户创建一次bean,直至
session消失。在这种情况下,对当前用户而言,bean是有状态的。好处就是少创建bean的实例,有那么一
点点性能的提升
应用场景:
1. 多数情况下应使用prototype
2. 若用户不多,且频繁操作(频繁使用action),硬件一般,可以考虑session,兴许还能提升一点点性能。
struts 中的action有几种
Spring in Action
Struts和spring分别是什么?
jsp 与 struts hibernate spring 的关系
谁有struts+hibernate+spring的例子?
求struts spring hibernate等j2ee教程
关于这个问题import org.apache.struts.action.Action
《Struts in Action》 英文版 下载
哪里有 spring in action 中文版 下载
Struts、Spring和Hibernate的学习该如何安排?
怎么向xtree中传值,用haberat+spring+struts的框架结构?
请问struts,spring,hibernate间有什么异同?
struts问题:如何使一个form对应多个action
struts中如何使一个form对应多个action
struts,怎样把action 中的值符值给不和这个action对应的actionform?
appFuse跟Spring、Hibernate、ibatis、struts等有什么区别和联系?
现在开发Struts+Spring+Hibernate的程序员一个月到手应该多少钱?
在struts中,actionServlet是怎么选择合适的action来处理请求的?
在Struts中Action和ActionForm有什么不同,各有什么作用了.
struts的问题:如何使一个form对应多个action
编译时出现org.apache.struts.action类找不到的情况
org.apache.struts.action does not exit,是为什么呀,应该处理
求<<spring in action>>一书的源代码
struts 验证