关于值栈(ValueStack)
2016-04-05 19:15
435 查看
每个 Action 类的对象实例都拥有一个 ValueStack对象.ValueStack相当于一个数据的中转站.
在其中保存当前 Action 对象和其他相关对象.
Struts 框架把 ValueStack 对象保存在名为 “struts.valueStack” 的请求属性中
在jsp中,${attrName}读取值,实际上该属性并不request等域对象中,而是从值栈中获取
----------------------------------
可以从ActionContext中获取值栈对象
值栈分为两个逻辑部分:
——Map栈:
实际上是OgnlContext类型,是一个Map,也是对ActionContext的一个引用,里面保存着各种Map
parameters: 该 Map 中包含当前请求的请求参数
request: 该 Map 中包含当前 request 对象中的所有属性
session: 该 Map 中包含当前 session 对象中的所有属性
application:该 Map 中包含当前 application 对象中的所有属性
attr: 该 Map 按如下顺序来检索某个属性: request, session, application
——对象栈:
实际上是CompundRoot类型,是一个使用ArrayList定以的栈,里面保存着各种和
当前Action相关的对象
在其中保存当前 Action 对象和其他相关对象.
Struts 框架把 ValueStack 对象保存在名为 “struts.valueStack” 的请求属性中
在jsp中,${attrName}读取值,实际上该属性并不request等域对象中,而是从值栈中获取
----------------------------------
可以从ActionContext中获取值栈对象
值栈分为两个逻辑部分:
——Map栈:
实际上是OgnlContext类型,是一个Map,也是对ActionContext的一个引用,里面保存着各种Map
parameters: 该 Map 中包含当前请求的请求参数
request: 该 Map 中包含当前 request 对象中的所有属性
session: 该 Map 中包含当前 session 对象中的所有属性
application:该 Map 中包含当前 application 对象中的所有属性
attr: 该 Map 按如下顺序来检索某个属性: request, session, application
——对象栈:
实际上是CompundRoot类型,是一个使用ArrayList定以的栈,里面保存着各种和
当前Action相关的对象
相关文章推荐
- Integer.valueof(null)报错
- Leetcode 96. Unique Binary Search Trees
- Leetcode 95. Unique Binary Search Trees II
- 303-e-Range Sum Query - Immutable
- Uva 10583 Ubiquitous Religions
- org.hibernate.exception.GenericJDBCException: Incorrect string value:
- iOS-精确控制UIButton 的image view与titlelabel的相对位置
- Quicksum-S.B.S.
- [LeetCode]334. Increasing Triplet Subsequence
- Android消息异步机制(ThreadLocal、MessageQueue、Looper、Handler关系总结)
- IOS开发-UI学习-UINavigationController(导航控制器)的使用
- TextruePacker
- iOS 隐藏导航栏UINavigationBar底部黑线
- 使用野狗(Wilddog)云setValue写入数据
- lintcode-medium-Segment Tree Query II
- 【iOS】使用UIView绘制本地验证码
- lintcode-medium-Segment Tree Query
- What's the difference between all the Selection Segues?
- 【iOS】UILabel多行文本的高度计算
- lintcode-medium-Segment Tree Build II