2 qq 18057555 qq_18057555 于 2016.03.12 22:25 提问

Struts里的action是单例,那这个单例是什么意思?

Struts里的action是单例,那这个单例是什么意思?
Struts里的action是单例,那这个单例是什么意思?

3个回答

caozhy
caozhy   Ds   Rxr 2016.03.12 23:59
已采纳

首先action不是单例。
这里说的单例,是设计模式里提到的单例模式(singleton),一个程序这个类型只有一个对象实例。

wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.13 08:43
   struts 2的Action是多实例的并非单例,也就是每次请求都会产生一个Action的对象。Servlet是单例的,也就是整个应用中每个被请求到的Servlet类都只创建了一个对象,所有相同请求都是调用同一个对象的service方法处理的。所谓单例就是通过限制对象的构造过程通常私有化构造函数,保证整个应用中只有一个该类的实例,即单例。
maiyikai
maiyikai   2016.03.13 12:01

struts1.x才是单例模式,而struts2不是,struts2是,一个action创建一个对象。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Struts2中Action的单例与多例
struts2中action是多例的,即一个session产生一个action背景:1) Struts2会对每一个请求,产生一个Action的实例来处理. 2) Spring的Ioc容器管理的bean默认是单实例的. 首先从数据安全性的问题上考虑,我们的Action应该保证是多例的,这样才不会出现数据问题。但是如果有的action比如只有admin才能操作,或者某些action,全站公用一个来提
Struts中的Action是单例还是多例
struts2中action是多例的,即一个session产生一个action如果是单例的话,若出现两个用户都修改一个对象的属性值,则会因为用户修改时间不同,两个用户访问得到的属性不一样,操作得出的结果不一样。举个例子:有一块布长度300cm,能做一件上衣(用掉100cm)和一件裤子(用掉200cm);甲和乙同时访问得到的长度都是300cm, 甲想做上衣和裤子,他先截取100cm去做上衣,等上衣做
struts2单例和多例
struts 2的Action是多实例的并非单例,也就是每次请求产生一个Action的对象。原因是:struts 2的Action中包含数据,例如你在页面填写的数据就会包含在Action的成员变量里面。如果Action是单实例的话,这些数据在多线程的环境下就会相互影响,例如造成别人填写的数据被你看到了。 而struts 1的Action是单实例的,因为它的数据保存在Form类中,多线程环境下,A
Struts1 和 Struts2 是否是单例
struts 2的Action是多实例的并非单例,也就是每次请求产生一个Action的对象。原因是:struts 2的Action中包含数据,例如你在页面填写的数据就会包含在Action的成员变量里面。如果Action是单实例的话,这些数据在多线程的环境下就会相互影响,例如造成别人填写的数据被你看到了; struts 1的Action是单实例的,因为它的数据保存在Form类中,多线程环境下,
Struts2的Action是单例还是多例 / SpringMVC的controller默认是单例还是多例?
Struts2的Action是单例还是多例?Spring的controller默认是单例还是多例?1、默认单例SpringMVC默认是单例的。与Struts2不同,SpringMVC没有默认处理方法,也就是说SpringMVC是基于方法的开发,都是用形参接收值,一个方法结束参数就销毁了,多线程访问都会有一块内存空间产生,里面的参数也是不会共用的。由于SpringMVC默认使用了单例,所以Contro
关于Struts2的Action是单例还是多例,是否可以进行配置
就Struts2而言 Action是多例,搜狗百科对于Struts2的线程模型这一块明确说明了每一次请求都会创建一个Action实例,
关于struts2 的单例和多例及线程安全的问题
我知道struts 2的Action是多实例的并非单例,也就是每次请求产生一个Action的对象。原因是:struts 2的Action中包含数据,例如你在页面填写的数据就会包含在Action的成员变量里面。如果Action是单实例的话,这些数据在多线程的环境下就会相互影响,例如造成别人填写的数据被你看到了。它存在着线程不安全。 而struts 1的Action是单实例的,因为它的数据保存在
struts2单例Action带来的问题与思考
struts2单例Action带来的问题与思考
struts2的单例多例问题
我想大家都知道struts2默认就是多例的,而spring默认都是例的,如果二者集成,那action会是单例还是多例呢?     首先我们先回顾一下struts2和spring的两种整合方式:     1. 由spring来创建和管理action,即在action上增加@Controller注解,如果是xml方式的话,就是在spring中增加action的配置,而在struts2的xml中,配
Struts2 Action 单例多例模式
很多时候我们学习框架,只知道怎么用,不知道起原理是