valuestack,stackContext,ActionContext.之间的关系

本文详细解析了Struts2框架中的三个核心组件:ActionContext、ValueStack与Stack Context的作用及相互关系。ActionContext用于获取请求相关的对象,ValueStack作为OGNL的实现,用于存放表单值,而Stack Context则提供了更丰富的上下文信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

三者之间的关系如下图所示:

relation


ActionContext 


一次Action调用都会创建一个ActionContext 
调用:ActionContext context = ActionContext.getContext() 




ValueStack 


由OGNL框架实现 
可以把它简单的看作一个List 
 

Stack Object:放入stack中的对象,一般是action。 
Stack Context(map):stack上下文,它包含一些列对象,包括request/session/attr/application map等。 
EL:存取对象的任意属性,调用对象的方法,遍历整个对象结构图。 



ActionContext是Action上下文
可以得到request session application
ValueStack是值栈 存放表单中的值
Stack Context 栈上下文 也是用来存值的



个人感觉吧,action context 是在action中通过actionSupport类来获取到,主要作用是获取request之类的对象

然后valuestack和stack context都是为了使用OGNL,其中value stack 是stack context的根对象,所以我们在JSP页面中访问value stack的内容时,是不用加#,而如果是访问stack context的其他对象则要加上#。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值