您的位置:首页 > 编程语言 > Java开发

Struts2的一些用法

2016-02-17 09:41 309 查看

ActionContext 的作用:

向前台JSP页面传递数据:

ActionContext.getContext().getSession() 获取的是session,然后用put存入相应的值,只要在session有效状态下,这个值一直可用

ActionContext.getContext().put(“x”, x) 默认的是request,在这个request未结束之前都是可用的

ActionContext ac = ActionContext.getContext();
// ac.getSession().put(key, value); 保存在session作用域
// ac.getApplication().put(key, value); 保存在Application作用域
// ac.put(key, value); 保存在request作用域


Value Stack的作用:

可以作为一个数据中转站

用于在前台-后台之间传递数据,最典型的做法就是struts2标签也ognl表达式的结合。我用得最多的就是数据回显。

ActionContext.getContext().getValueStack().push(x),在Struts2中,一个请求在最终到达Action的方法之前,Action对象本身会被压入ValueStack,可以把一个对象直接压入到valuestack中。

为什么说会把对象压入栈顶?通过查看源码我们可以清楚的知道:

push方法:



再查看root的push方法:



这下是不是就明白为什么能将对象压入栈顶了。

Interator标签当前迭代的对象在栈顶。 Iterator标签的value可以不写,默认是迭代栈顶元素。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: