ValueStack、OGNL和Struts2标签
来源:互联网 发布:幸运pc28软件下载 编辑:程序博客网 时间:2024/05/21 08:05
一、ValueStack
1.ValueStack(值栈): 贯穿整个 Action 的生命周期(每个 Action 类的对象实例都拥有一个 ValueStack对象). 相当于一个数据的中转站.
在其中保存当前Action 对象和其他相关对象.
2.Struts 框架把 ValueStack对象保存在名为“struts.valueStack” 的请求属性中
3.在 ValueStack 对象的内部有两个逻辑部分:
- ObjectStack:实际上是CompoundRoot类型,是一个使用ArrayList定义的栈。Struts 把 Action 和相关对象压入 ObjectStack 中。是一个数据结构意义的栈。
- ContextMap:实际上是OgnlContext类型,是个Map,也是对 ActionContext 的一个引用。Struts 把各种各样的映射关系(一些 Map 类型的对象) 压入 ContextMap 中。。
Struts 会把下面这些映射压入 ContextMap中
- parameters: 该 Map 中包含当前请求的请求参数
- request: 该 Map 中包含当前 request对象中的所有属性
- session: 该 Map 中包含当前 session 对象中的所有属性
- application:该 Map 中包含当前 application 对象中的所有属性
- attr: 该 Map 按如下顺序来检索某个属性: request, session, application
默认情况下,Action对象会被struts2 自动的放到值栈的顶端
二、OGNL
在 JSP 页面上可以可以利用OGNL(Object-Graph Navigation Language: 对象-图导航语言) 访问到值栈(ValueStack)里的对象属性.
若希望访问值栈中ContextMap 中的数据, 需要给 OGNL 表达式加上一个前缀字符#.
例如<s:property value="#session.user.username">
如果没有前缀字符 #, 搜索将在 ObjectStack 里进行.
例如<s:property value="username">
0 0
- ValueStack、OGNL和Struts2标签
- Struts2框架--------OGNL和valueStack
- struts2中OGNL和 ValueStack(一)
- struts2中OGNL和 ValueStack(一)
- struts2中OGNL和 ValueStack(二)
- struts2中OGNL和 ValueStack(一)
- Struts2 学习系列 (4) ValueStack和OGNL
- Struts2 OGNL ValueStack
- Struts2-OGNL-ValueStack
- Struts2 OGNL valueStack
- 【Struts2五】ValueStack以及ognl表达式二(常用标签)
- ValueStack和OGNL实现Struts2表单数据的存储原理
- struts2学习三(OGNL和ValueStack值栈)
- Struts2学习记录2(ValueStack(值栈)和ognl)
- Struts2 ValueStack & ActionContext & OGNL 关系
- Struts2 OGNL valueStack琐碎总结
- struts2的ognl与valuestack
- Struts2-Ognl表达式与ValueStack
- AsyncSocket介绍
- [FAQ02895]【call】在通话过程中,一直靠近距离传感器。通话结束时,要求马上点亮屏幕
- 设计模式(13)——代理模式(Proxy Pattern)
- 设计模式(14)——模板方法模式(Template Method)
- 28. Implement strStr()
- ValueStack、OGNL和Struts2标签
- 配置PostgreSQL数据库流复制(replication stream)环境
- IIS7.5下的web.config 404 配置
- 设计模式(15)——命令模式(Command Pattern)
- DIV+CSS的命名规则
- 使用maven搭建SpringMVC+MyBatis开发环境
- [FAQ17435]插入两张卡,选择总是询问。非常快速的连续点击“快速拨号、最近、联系人”正上方的最近联系人,进行拨号,出现一次“拨号失败,已超过限制”后,就一直不能拨号。
- 设计模式(16)——迭代器模式(Iterator Pattern)
- 位域,内存,大小端详解