在struts2的action中操作域对象(request、session)

在struts2的Action中,操作域对象一共有三种方式:
1.ActionContext(与servelt API无关联):

1 //相当于request
2 ActionContext.getContext().put("userName", user.getUserName());
3 //相当于session
4 ActionContext.getContext().getSession().put("userName", user.getUserName());
5 //相当于Application
6 ActionContext.getContext().getApplication().put("userName", user.getUserName());
7 //parameter
8 String name = (String) ActionContext.getContext().getParameters().get("userName");

2.实现ServletRequestAware,ServletResponseAware接口,通过注入的方式,获取request、response:

 1 private HttpServletResponse response;
 2
 3 private HttpServletRequest request;
 4
 5 @Override
 6 public void setServletResponse(HttpServletResponse response) {
 7 this.response = response;
 8 }
 9
10 @Override
11 public void setServletRequest(HttpServletRequest request) {
12 this.request = request;
13 }

3.通过ServletActionContext提供的静态方法获得request、response:

1 HttpServletRequest request = ServletActionContext.getRequest();

在struts2的action中操作域对象(request、session),布布扣,bubuko.com

时间: 2024-10-11 21:51:34

在struts2的action中操作域对象(request、session)的相关文章

在Action中操作域对象

----------------------siwuxie095 在 Action 中操作域对象 1.在 Action 中可以操作的域对象主要有三个: (1)Request (2)Session (3)ServletContext 「PageContext 域对象用于页面中,而非 Action 中」 2.使用 ServletActionContext 类进行操作 // 操作三个域对象 // (1) Request 对象 HttpServletRequest request=ServletActi

9.Struts2在Action中获取request-session-application对象

为避免与Servlet API耦合在一起,方便Action类做单元测试. Struts2对HttpServletRequest.HttpSession.ServletContext进行了封装,构造了三个Map对象来替代这三种对象. 注意,这三个对象与Servlet API中的三个对象是相同的. 即,在Action中放入Session中信息,在JSP页面中是可以读出来的. 方式一:通过使用ActionContext类获取 在Struts2框架中,通过Action的执行上下文类ActionConte

理解Struts2的Action中的setter方法是怎么工作的

接触过webwork和Struts2的同行都应该知道, 提交表单的时候,只要Action中的属性有setter 方法,这些表单数据就可以正确赋值到Action中属性里:另外对于Spring配置文件中声明的bean,也可以在Action中声明setter 方法将其注入到Action实例中.那么现在要研究:这些是怎么工作的呢? (1)提交表单时的参数 在struts2-core-2.3.1.2.jar压缩包内的struts-default.xml配置文件中有这个配置:<interceptor nam

在Struts2的Action中取得请求参数值的几种方法

把参数放到作用域里面去. 如:action 中: request.setAttribute("参数名","值");   页面上:  request.getAttribute("参数名"); request.getParameter()方法完全可以获得URL参数,检查下是否参数名写错 你使用的是不是BaseAction.如果就是server.getRequest().getParameter() 看看你的控件是不是 name 属性!如果id的话就获

【JAVA学习】struts2的action中使用session的方法

尊重版权:http://hi.baidu.com/dillisbest/item/0bdc35c0b477b853ad00efac 在Struts2里,如果需要在Action中使用session,可以通过下面两种方式得到1.通过ActionContext class中的方法getSession得到2.Action实现org.apache.struts2.interceptor.SessionAware接口的方式来对session进行操作 下面先看一个采用第一种方式,在action中得到sessi

在Struts2的Action中获得request response session几种方法

转载自~ 在Struts2中,从Action中取得request,session的对象进行应用是开发中的必需步骤,那么如何从Action中取得这些对象呢?Struts2为我们提供了四种方式.分别为servlet 不相关的 非IoC 取得Request等对象的方式servlet 不相关的 IoC 取得Request等对象的方式servlet 相关的 非IoC 取得Request等对象的方式servlet 相关的 IoC 取得Request等对象的方式以下分别叙述.首先请看struts.xml文件文

Struts2 的Action中取得请求参数值的几种方法

Struts2 的Action中取得请求参数值的几种方法 先看GetRequestParameterAction类代码: Java代码 public class GetRequestParameterAction extends ActionSupport { private String bookName; private String bookPrice; public String getBookName() { return bookName; } public void setBook

Struts2的Action中如何操作作用域对象

得到作用域对象有三种方法,这里用代码来解释: 1 package com.cy.action; 2 3 import javax.servlet.ServletContext; 4 import javax.servlet.http.HttpServletRequest; 5 import javax.servlet.http.HttpServletResponse; 6 7 import org.apache.struts2.interceptor.ServletRequestAware; 8

struts2的action中获得request response session 对象

在struts2中有两种方式可以得到这些对象 1.非IoC方式 要获得上述对象,关键Struts 2中com.opensymphony.xwork2.ActionContext类.我们可以通过它的静态方法getContext()获取当前Action的上下文对象.有了这个对象我们想获得其他几个对象就好办了 ActionContext ctx = ActionContext.getContext(); Map session = ctx.getSession(); 细心的朋友可以发现这里的sessi