struts2 action中获取request session application的方法
来源:互联网 发布:模型预测控制 知乎 编辑:程序博客网 时间:2024/04/28 05:33
共四种方式:
其中前两种得到的是Map<String,Object> 后两种得到的才是真正的request对象
而Map就是把request对象中的属性取出做成了键值对而已。
【方法一】
- public class LoginAction {
- private Map request;
- private Map session;
- private Map application;
- public String execute() {
- request = (Map)ActionContext.getContext().get("request");
- session = ActionContext.getContext().getSession();
- application = ActionContext.getContext().getApplication();
- request.put("username1", "jingjing1");
- session.put("username2", "jingjing2");
- application.put("username3", "jingjing3");
- return "success";
- }
- }
取出结果
- <body>
- <%
- String username1 = (String)request.getAttribute("username1");
- String username2 = (String)session.getAttribute("username2");
- String username3 = (String)application.getAttribute("username3");
- %>
- <%=username1 %>
- <%=username2 %>
- <%=username3 %>
- </body>
【方法二】
- public class LoginAction implements RequestAware,SessionAware,ApplicationAware {
- private Map<String, Object> request;
- private Map<String, Object> session;
- private Map<String, Object> application;
- public void setRequest(Map<String, Object> request) {
- // TODO Auto-generated method stub
- this.request = request;
- }
- public void setSession(Map<String, Object> session) {
- // TODO Auto-generated method stub
- this.session = session;
- }
- public void setApplication(Map<String, Object> application) {
- // TODO Auto-generated method stub
- this.application = application;
- }
- public String execute() {
- request.put("username1", "jingjing11");
- session.put("username2", "jingjing222");
- application.put("username3", "jingjing33");
- return "success";
- }
- }
- public class LoginAction {
- private HttpServletRequest request;
- private HttpSession session;
- private ServletContext application;
- public String execute() {
- request = ServletActionContext.getRequest();
- session = request.getSession();
- application = session.getServletContext();
- //application = ServletActionContext.getRequest().getSession().getServletContext();
- request.setAttribute("aaa", "aaa");
- session.setAttribute("bbb", "bbb");
- application.setAttribute("ccc", "ccc");
- return "success";
- }
- }
【方法四】
- public class LoginAction implements ServletRequestAware {
- private HttpServletRequest request;
- private HttpSession session;
- private ServletContext application;
- public void setServletRequest(HttpServletRequest request) {
- // TODO Auto-generated method stub
- this.request = request;
- this.session = request.getSession();
- this.application = session.getServletContext();
- }
- public String execute() {
- request.setAttribute("111", "111");
- session.setAttribute("222", "222");
- application.setAttribute("333", "333");
- return "success";
- }
- }
HttpServletRequest方法总结:
HttpServletRequest接口是继承自ServletRequest接口的,增加了和HTTP相关的一些方法
getScheme() 方法返回请求的计划,比如http,https或者ftp.
getServerName() 方法返回被发送请求的服务器的主机名
getServerPort() 方法返回被发送请求的端口号。
getContextPath() 返回请求地址的根目录,以"/"开关,但不是以"/"结尾。
一个常用的获得服务器地址的连接字符串是:
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
getCookies() 取得cookie
getMethod() 取得请求方法,如get,post或put
getRequestURL() 取得请求URL(统一资源定位符)
getRequestURI() 取得请求URI(统一资源标识符)
getSession() 取得对应session
public HttpSession getSession();
public HttpSession getSession(boolean create);
返回与这个请求关联的当前的有效的session。如果调用这个方法时没带参数,那么在没有session与这个请求关联的情况下,将会新建一个session。如果调用这个方法时带入了一个布尔型的参数,只有当这个参数为真时,session才会被建立。
ServletRequestAware与RequestAware的区别
RequestAware ——通过Map来提供对所有request属性的访问
- struts2 action中获取request session application的方法
- struts2 action中获取request session application的方法
- struts2 action中获取request session application的方法
- struts2 action中获取request session application的方法
- struts2 action中获取request session application的方法
- struts2 action中获取request session application的方法
- Struts2的Action中获取request,session,application对象
- struts2中获取action中request,response,session的方法
- struts2的action中获取request、response、session的方法
- struts2 Action中获取request, response,Session对象的方法
- Struts2 action中获取session,request对象的方法
- struts2 获取 request session application的方法
- 四种方法获取Struts2 action中的request,session,application
- struts2 Action获取request,session,application
- struts2中Action中设置和取得request/session/application的方法
- Struts2的Action中获得request、session和application的几种方法
- Struts2的Action中获得request、session和application的几种方法
- struts2中Action获得request、session、application进行设值和取值的方法
- 前置操作与后置操作
- OpenSCManager function
- Windows开发者如何选择开发环境(IDE)
- STM32F2xx的定时器的应用
- Dynamics CRM 2011 编程系列(26):自定义工作流
- struts2 action中获取request session application的方法
- MultiMedia APIs for iPhone
- IOS内存管理
- windows 网络系统
- 【Cocos2dx通信(Http&Socket)相关编译到Android细节总结】编译加入curl关联lib与头文件 && 解决pthread的cancel函数NDK不支持,找不到sockaddr_i
- test
- spring mvc配置及整合hibernate
- [乐意黎原创] 自动修改文件夹名的bat程序 批量删除文件夹名的前10位字符(如“1234456789-文件夹”改为“文件夹”
- java导出pdf