我们正在使用Struts2-Spring集成,我的所有动作类都实现了SessionAware,示例代码到动作类,它们的弹簧定义如下,
public class IRXxxxAction extends ActionSupport implements SessionAware {
private Map session;
public String execute()
{//}
public void setSession(Map<String, Object> session)
{
this.session = session;
}
}
Run Code Online (Sandbox Code Playgroud)
弹簧配置
<bean name="userAction" class="com.IRXxxxAction" >
<property name="adminDAO" ref="adminDAO" />
</bean>
Run Code Online (Sandbox Code Playgroud)
如果我理解正确,每个自动连线属性将是一个单独的,所以如果以上是真的,无论如何,会话映射是否在两个同时请求之间共享?
问候,
AYUSH
你在用户邮件列表上提出了同样的问题,如果你使用的是Struts2-Spring插件,请确保将bean范围设置为prototype.
Struts2为每个请求创建新的操作实例,因为操作也作为模型工作,为了使线程安全,在每个请求上创建一个新对象并放置在值堆栈上.
不会证明范围将由Spring处理,singleton并且对于永远请求将返回相同的动作实例,这可能导致从数据损坏到奇怪行为的许多问题.
| 归档时间: |
|
| 查看次数: |
1313 次 |
| 最近记录: |