struts2值栈valuestack的内存图及操作
来源:互联网 发布:zank 知乎 编辑:程序博客网 时间:2024/06/03 14:38
值栈中对象栈和map栈的操作
package com.itheima09.struts2.action;import ognl.OgnlContext;import org.apache.struts2.ServletActionContext;import com.itheima09.bean.Person;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;import com.opensymphony.xwork2.util.CompoundRoot;import com.opensymphony.xwork2.util.ValueStack;public class ValueStackAction extends ActionSupport{/** * 获取值栈 */public String testGetValueStack(){ValueStack valueStack = ActionContext.getContext().getValueStack();ValueStack valueStack2 = ServletActionContext.getValueStack(ServletActionContext.getRequest());ValueStack valueStack3 = (ValueStack)ServletActionContext.getRequest().getAttribute("struts.valueStack");System.out.println(valueStack);System.out.println(valueStack2);System.out.println(valueStack3);return SUCCESS;}/** * 把一个对象放入到对象栈中 * @return */public String testPutObjToObjectStack_1(){/** * 把一个对象放入到对象栈的栈顶 */ActionContext.getContext().getValueStack().push("aaaa");return SUCCESS;}public String testPutObjToObjectStack_2(){/** * 把一个对象放入到对象栈的栈顶 */ActionContext.getContext().getValueStack().getRoot().add(0,"aaa");return SUCCESS;}public String testPutObjToObjectStack_3(){/** * 把一个对象放入到对象栈的最底部 */ActionContext.getContext().getValueStack().getRoot().add("aaa");return SUCCESS;}/** * 从对象栈的栈顶提取元素 * @return */public String testGetObjFromObjectStack_1(){ActionContext.getContext().getValueStack().peek();return SUCCESS;}public String testGetObjFromObjectStack_2(){ActionContext.getContext().getValueStack().getRoot().get(0);return SUCCESS;}/** * 从栈顶把对象弹出对象栈 */public String testPopObj_1(){ActionContext.getContext().getValueStack().pop();return SUCCESS;}/** * 从对象栈中清除一个元素 * @return */public String testPopObj_2(){ActionContext.getContext().getValueStack().getRoot().remove(0);return SUCCESS;}/** * 把一个对象放入到对象栈中 * @return */public String testPutObjectToObjectStack(){Person person = new Person();person.setPid(1L);person.setName("王二麻子");//把person放入到了对象栈的栈顶ActionContext.getContext().getValueStack().push(person);ValueStack valueStack = ActionContext.getContext().getValueStack();//通过setParameter方法把对象栈的属性赋值valueStack.setParameter("name", "aaaaa");//从对象栈中把栈顶的对象提取出来person = (Person)ActionContext.getContext().getValueStack().peek();System.out.println(person.getName());return SUCCESS;}/** * 把一个字符串放入到request域中 */public String testPutStrToRequest(){ServletActionContext.getRequest().setAttribute("request_aaa", "request_aaa");ValueStack valueStack = ActionContext.getContext().getValueStack();return SUCCESS;}/** * 把一个字符串放入到application域中 */public String testPutStrToApplication(){ServletActionContext.getServletContext().setAttribute("application_aaa", "application_aaa");ValueStack valueStack = ActionContext.getContext().getValueStack();return SUCCESS;}/** * 把一个字符串放入到map栈中 */public String testPutStrToMap(){ActionContext.getContext().put("aaa", "aaa");ValueStack valueStack = ActionContext.getContext().getValueStack();return SUCCESS;}}
0 0
- struts2值栈valuestack的内存图及操作
- Struts2的ValueStack(值栈)介绍
- Struts2的ValueStack(值栈)
- 【Struts2】Struts2: ValueStack值栈
- Struts2的ValueStack(值栈)的原理
- Struts2数据传输的背后机制:ValueStack(值栈)
- Struts2数据传输的背后机制:ValueStack(值栈)
- Struts2数据传输的背后机制:ValueStack(值栈)
- struts2 值栈 valuestack
- Struts2值栈ValueStack介绍
- Struts2的ValueStack及EL表达式中取ValueStack的内幕
- 关于struts2.0的valuestack
- struts2 ValueStack的理解
- struts2的ognl与valuestack
- Struts2的ValueStack工作原理
- (转)Struts2 ValueStack的理解
- Struts2中ValueStack的学习
- struts2的contextmap和valueStack
- HTML学习记录<六> :表格
- AndroidUI 引导页面的使用
- Java数据结构与算法之数组排序——选择
- 判断一个树是不是平衡二叉树
- [HDU1000]
- struts2值栈valuestack的内存图及操作
- dubbo 自定义过滤器,打印接口调用信息
- JavaScript显示和隐藏某个div
- C#学习日记04---数据类型 之 整数类型
- QT5 学习之路14---对象模型
- 下载、编译Android源码简明版
- ACM起步
- 三大框架之----struts2之ValueStack存取数据
- struts2+spring+hibernate框架总结(框架分析+环境搭建+实例源码下载)