
值栈问题:struts2的值栈分值和栈,即map类型的数据和存放在栈里面的数据。




ModelDriven的源码:它会将model放在对象栈的栈顶。


从上面,我们看到值栈里面存在着数据中心,里面有些页面传递过来的数据。作用范围:是一个请求,request
那么如何从struts2的数据中心获取数据呢,即jsp页面如何获取这值栈里面的数据呢。
jsp页面获取值栈中心的数据:利用OGNL或者EL表达式获取。
OGNL表达式:
获取map的数据用“#”
OGNL的格式和语法:
有时候如果是表达式的时候,可以不写%{}

对象栈中有默认的搜索行为:所有有时候直接写对象栈中的属性即可,即从对象栈中获取:

若我们从数据库中获取了数据,得向页面传送,这个时候,我们先将数据存放到值栈中,然后jsp页面再从值栈获取。

EL表达式:
EL表达式用${}

改为这个EL表达式的格式:数据也可以从值栈中获取;用的是struts2包装了的request对象
封装的源码:

查找顺序:

request中找不到,就从值栈中找。

原文:http://www.cnblogs.com/fengli9998/p/6507036.html