ValueStack内部结构
ValueStack内部数据结构
一、获取ValueStatck的两种方式
1、通过SerlvetActionContext获得
ValueStack valueStack = (ValueStack) ServletActionContext.getRequest().getAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY);
SerlvetActionContext中有个常量
public static final String STRUTS_VALUESTACK_KEY = "struts.valueStack";
由此可见ValueStack是保存在reqeust中的,所以ValueStack的生命周期就是reqeust的生命周期
2、通过ActionContext获得
ValueStack valueStack = ActionContext.getContext().getValueStack();
二、向ValueStack中存取数据
向ValueStack中设置数据
public class OGNLAction1 extends ActionSupport { @Override public String execute() throws Exception { // ValueStack valueStack = (ValueStack) ServletActionContext.getRequest().getAttribute(ServletActionContext.STRUTS_VALUESTACK_KEY); ValueStack valueStack = ActionContext.getContext().getValueStack(); //创建map参数,将数据保存在map中,数据保存在root的索引1位置, valueStack.set("key", "value"); //将数据保存在root的索引0位置 valueStack.push("Hello ValueStatck"); ActionContext context = ActionContext.getContext(); context.put("reqscope", "requestinfo"); return SUCCESS; } }
在JSP中想ValueStack获取数据
<%@ taglib uri="/struts-tags" prefix="s"%> <a href="${pageContext.request.contextPath }/demo03/ognl1.action?name=Struts2">访问action</a> <s:debug></s:debug> <h1>访问root中的第一元素</h1> <s:property value="[0].top" /> <h1>访问key,通过key值在root中自上而下查找</h1> <s:property value="key" /> <br /> <s:property value="[1].top" /> <br /> <s:property value="[1].top.key" /> <h1>访问request中的数据</h1> <s:property value="#request.reqscope" /> <h1>访问请求参数</h1> <s:property value="#parameters.name" />
相关推荐
赠送jar包:ognl-3.2.21.jar; 赠送原API文档:ognl-3.2.21-javadoc.jar; 赠送源代码:ognl-3.2.21-sources.jar; 赠送Maven依赖信息文件:ognl-3.2.21.pom; 包含翻译后的API文档:ognl-3.2.21-javadoc-API文档-...
赠送jar包:ognl-3.1.12.jar; 赠送原API文档:ognl-3.1.12-javadoc.jar; 赠送源代码:ognl-3.1.12-sources.jar; 赠送Maven依赖信息文件:ognl-3.1.12.pom; 包含翻译后的API文档:ognl-3.1.12-javadoc-API文档-...
JS:ognl表达式 JS:ognl表达式 JS:ognl表达式
赠送jar包:ognl-3.2.21.jar; 赠送原API文档:ognl-3.2.21-javadoc.jar; 赠送源代码:ognl-3.2.21-sources.jar; 赠送Maven依赖信息文件:ognl-3.2.21.pom; 包含翻译后的API文档:ognl-3.2.21-javadoc-API文档-...
有对struts2标签和OGNL的总结。
赠送jar包:ognl-3.1.12.jar; 赠送原API文档:ognl-3.1.12-javadoc.jar; 赠送源代码:ognl-3.1.12-sources.jar; 赠送Maven依赖信息文件:ognl-3.1.12.pom; 包含翻译后的API文档:ognl-3.1.12-javadoc-API文档-...
从官网checkout下来的源码,如果大家觉的区官网麻烦可以直接下载这个
struts2-xwork-ognl的源文件(jar包),在eclipse中导入就可以直接在eclipse中查看对应的源代码,(注:现在下载的struts2的开发包已不自带此文件)免费的啊
本资源适合刚接触Struts和Ognl的小伙伴交流学习,欢迎吐槽。
struts2的ognl
Struts2学习计划5---Struts2_OGNL(对象图导航语言)的学习
Struts2中ognl-2的源代码,从官网下载的
Struts2的标签库及OGNL表达式语言
struts2 中 OGNL表达式的使用struts2 中 OGNL表达式的使用
核心技术篇首先分析了Struts2中多种具有代表性的设计模式,然后对Struts2中的精华——OGNL表达式引擎和XWork框架的原理及机制进行了全面深入的分析和讲解。运行主线篇首先对Struts2的两大运行主线——初始化主线和...
整合多份struts2中关于ognl的学习资料
struts2-xwork-ognl的javadoc文件,在Eclipse里直接导入,就可以实现随时查询功能。(注:现在下载的struts2的开发包已不自带此文件)
struts2标签和OGNL表达式struts2标签和OGNL表达式
Struts2的一个关键特性就是它可以对Action携带的数据进行读写访问,例如在前面我们在表单中使用user.username指定数据传递给Action的user对象的username属性,在<s:property>元素中使用user.username来获取用户的...
第四章:struts2中的OGNL.ppt,详细讲解了struts2的标签使用