首页 > 代码库 > Struts2 的 值栈

Struts2 的 值栈

1、ValueStack 对象的内部有2个逻辑部分:

  -- ObjectStack:Struts 把 Action 和相关对象亚茹ObjectStack中

  -- ContextMap:Sturts 把各种各样的映射关系(一些 Map 类型的对象)压入ContextMap中,实际上就是对ActionContext的一个引用

2、Struts 会把下面这些映射压入ContextMap中:

  -- parameters: 该Map中包含当前请求的请求参数;

  -- request: 该Map中包含当前request对象中的所有属性;

  --session: 该Map中包含当前session对象中的所有属性;

  --application: 该Map包含当前application对象的所有属性;

  --attribute: 该Map如下顺序检索某个属性,request、session、application

技术分享

 

3、在Jsp页面上可以通过OGNL(Object-GraphNavigation Language 对象-图导航语言)来直接访问值栈(ValueStack)里的对象属性。若希望访问值栈中的ContextMap中的数据,需要在OGNL表达式加上前缀字符 # ,如果没有加上前缀字符 # ,搜索将在ObjectStack里进行。

  

Struts2 的 值栈