Struts2值栈的相关操作
2016-05-08 00:00
525 查看
import org.apache.struts2.ServletActionContext; 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 testValueStack(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); ValueStack valueStack2 = ServletActionContext.getContext().getValueStack(); ValueStack valueStack3 = (ValueStack)ServletActionContext.getRequest().getAttribute("struts.valueStack"); System.out.println(valueStack); System.out.println(valueStack2); System.out.println(valueStack3); return ""; } /* * 把数据放入对象栈中的第一种方式 */ public String addDataToObjectStack_1(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 把字符串添加到了CompoundRoot的第一个位置,我们把第一个位置称为对象栈的栈顶 */ valueStack.push("aaaaa"); return ""; } /* * 把数据放入对象栈中的第二种方式 */ public String addDataToObjectStack_2(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 把字符串添加到了对象栈中 */ valueStack.getRoot().add("aaaa"); return ""; } /* * 把数据放入对象栈中的第三种方式 */ public String addDataToObjectStack_3(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 把字符串添加到了对象栈中 * 把一个map放入到了对象栈的栈顶,"aaa"作为key,"asfd"作为value */ ActionContext.getContext().getValueStack().set("aaa", "asfd"); return ""; } /** * 从对象栈中把数据提取出来的方式 * 第一种方式 */ public String addDataFromObjectStack_1(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 提取栈顶的元素 */ ActionContext.getContext().getValueStack().getRoot().get(0); return ""; } /** * 从对象栈中把数据提取出来的方式 * 第二种方式 */ public String addDataFromObjectStack_2(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 提取栈顶的元素 */ ActionContext.getContext().getValueStack().peek(); return ""; } /* * 把对象栈的栈顶的元素移除 */ public String removeDataFromObjectStack_1(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 移除栈顶的元素 */ ActionContext.getContext().getValueStack().getRoot().remove(0); return ""; } /* * 把对象栈的栈顶的元素移除 */ public String removeDataFromObjectStack_2(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); /** * 移除栈顶的元素 */ ActionContext.getContext().getValueStack().pop(); return ""; } /** * 把一个key,value键值对放入到request域中 */ public String putObjectToRequest(){ ServletActionContext.getRequest().setAttribute("aaa", "aaa"); ValueStack valueStack = ActionContext.getContext().getValueStack(); return ""; } /** * 把一个key,value键值对放入到application域中 */ public String putObjectToApplication(){ ServletActionContext.getServletContext().setAttribute("aaaa", "aaaa"); ValueStack valueStack = ActionContext.getContext().getValueStack(); return ""; } /** * 把一个key,value直接放在map栈中 */ public String putDataToMapStack_1(){ ValueStack valueStack = ActionContext.getContext().getValueStack(); ActionContext.getContext().put("aaa", "aaaa"); return ""; } }
相关文章推荐
- Java 数据类型和 MySql 数据类型对应一览表
- java+Struts2生成验证码
- java常用集合类详解
- Java日期加减操作
- SpringMVC上传文件实例
- Struts2文件上传,以及上传拦截异常国际化处理
- Spring的四种事务管理(一种编程式事务+三种声明事务)<学习随笔>
- SpringMVC简单入门(注解)<学习随笔>
- java实现附件预览(openoffice+swftools+flexpaper)
- struts2<s:iterator>遍历map小结
- 判断Struts2的Get/Post请求
- 使用监听器实现Java Web的定时任务
- Spring DAO vs Spring ORM vs Spring JDBC
- Struts文件下载详解
- struts2入门(登陆实例)
- struts2文件上传,文件类型 allowedTypes对应
- 安卓异常java.lang.IllegalStateException: Content has been consumed
- Java 语言中 List、Set 和 Map 的区别
- javaWeb中文乱码问题
- Struts2注解开发