1

我的问题是:

1)在Struts2中,每个动作对象都有自己对应的ActionContextValueStack吗?

换句话说,对于每个新请求,都会创建一个新的操作对象。这是否意味着每次创建新的操作对象时,都会创建一个新的ActionContext并且ValueStack还会创建一个?

2)考虑这种情况:

Action1------1st req----->view.jsp------2nd req--------->action2

因此,当对 action1 的请求到来时,将创建一个新的 action1 对象,ActionContext并且ValueStack将创建相应的和。

从 view.jsp(点击超链接)一个新的请求去 action2。

这是否意味着先前的ActionContextand ValueStack(与 action1 相关)被销毁并创建了新的ActionContextand ValueStack(对于 action2)?

3) 假设我ActionContext在 view.jsp 中的 (of action1) 中存储了一些东西,然后单击 action2 的超链接(来自 view.jsp),这些数据会与ActionContext(of action1) 一起丢失吗?

谢谢。

4

1 回答 1

3

为每个请求创建一个新的ActionContext和。ValueStack这通常意味着每个动作,但并非总是如此(在动作链接的情况下)。这些每个请求的对象在请求结束时超出范围。那时,您存储在其中的所有内容都将消失。

于 2011-09-25T15:51:46.210 回答