首页 > 代码库 > struts2入门---ActionContext
struts2入门---ActionContext
1.开发环境搭建
2.简单应用
我们在index.jsp里面这样写:
<a href="http://www.mamicode.com/TestActionContext.action?name=zhoujing&age=21">Test ActionContext</a>
<%
if(application.getAttribute("date") == null)
application.setAttribute("date", new Date());
%>
现在我们编写一个java类TestActionContext
package com.struts.action; import java.util.Map; import org.apache.struts2.dispatcher.Parameter; import com.opensymphony.xwork2.ActionContext; public class TestActionContext { public String execute(){ //0. 获取ActionContext 对象 //ActionContext 是Action的上下文对象. 可以从当中获取到当前的Action需要的一切信息 ActionContext actionContext = ActionContext.getContext(); //通过调用ActionContext 对象的getApplication()方法来获取application对应的Map对象 //1. 获取application 对应的map 并向其中添加一个属性 Map<String, Object> applicationMap = actionContext.getApplication(); //设置属性 applicationMap.put("applicationKey", "applicationValue"); //获取属性 Object date = applicationMap.get("date"); System.out.println("date: " + date); //2. session Map<String, Object> sessionMap = actionContext.getSession(); sessionMap.put("sessionKey", "sessionValue"); //3. request //ActionContext 中并没有提供getRequest方法来获取Request对应的Map对象 //需要手工的调用get()方法传入request字符串来获取. Map<String, Object> requestMap = (Map<String, Object>) actionContext.get("request"); requestMap.put("requestKey", "requestValue"); //4. 获取请求参数对应的map, 并获取指定的参数值. //注意: 键: 请求参数的名字.值 : 请求参数的值 键值一一对应直接jsp页面可以直接 parameters.key获取值 // parameters这个Map只能读 ,不能写入数据, 如果写入,不出错, 但也不起作用. Map<String, Parameter> parameters = actionContext.getParameters(); System.out.println(parameters.get("name")); System.out.println(parameters.get("age")); return "success"; } }
session与request的获取属性与application一样的所以就不展示了..
现在编写跳转后的显示页面test-actionContext.jsp
application: ${applicationScope.applicationKey } <br><br> session: ${sessionScope.sessionKey } <br><br> request: ${requestScope.requestKey } <br><br> name: ${parameters.name} <br><br> age: ${parameters.age}
最后到达的效果就是这样
会用就好 原理以后用熟悉了自然就懂了......
struts2入门---ActionContext
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。