struts 2 action的值是不是放在session中?是的话,怎样在每次重新发起request时把上次action里的值清掉?
[b]问题补充:[/b]
不过,我碰到一个问题:
客户端发出一个请求到服务器,服务器执行Action1(Action1里面包含一个变量field1,初始值为null)。执行完Action1后,field1的值变为“123“。然后返回客户端。接着,客户端再次发出一个请求到服务器,服务器再次执行Action1,这是发现field1的初始值为“123“.为什么?怎么解决?
[b]问题补充:[/b]
To netfork:
[quote]楼主不会把action作为单例了吧。。。
如果是基于struts2 + spring,千万不要把action作为单例设定,这样会多线程共享成员变量。[/quote]
我是基于struts2 + spring,能否给多点指导“楼主不会把action作为单例了吧“?
To lovewhzlq:
[quote]那是客户端再次发出一个请求里包含了field1的值,struts自动绑定到action里[/quote]
第二次请求应该没有包含field1的值,我的代码是这样的
[code="java"]
fixed/s:param
createCourse/s:param/s:url">
create course
[/code]
这个链接没有把field1的值作为参数传过去。
[b]问题补充:[/b]
Action的代码是:
[quote]public class CourseRetrieveAction extends ActionSupport {
.....[/quote]
[b]问题补充:[/b]
To lovewhzlq:
[quote]对了,你的spring配置struts的bean,不能设置为配置单例啊
要设置scope ="prototype"[/quote]
不好意思,小弟刚学struts不是很久,能否弱弱的问下在哪里设置scope ="prototype"?是不是struts.xml里的的属性?谢谢!