1.可以通过struts2 中的ActionContext类来访问,
以下几个 方法为其常用:
Static ActionContext getContext(): 获取ActionContext实例;
Object get(Object key): 类似于request.getAttribute(String name);
Map getParameters():获取所有的请求参数,类似于request.getParameterMap();
Map getApplication(): 相当于ServletContext实例,返回的是Map对象
Map getSession() :返回类似于HttpSession的 实例
void setApplication(Map application): 直接传入一个Map实例,将Map实例里的key-value对转换成application的key-value
void setSession(Map session): 直接传入一个Map实例,将Map实例里的key-value对转换成session的key-value
下面是一个例子:
private HttpServletRequest request; public void setServletRequest(HttpServletRequest request) { this.request = request; }获得Session(SessionAware)、Response(ServletResponseAware)、Context(ServletContextAware)对象也是同样方法 (注意,此时的session是Map类型)
这个类提供了如下几个静态方法
PageContext getPageContext(): 取得PageContext对象
HttpServletRequest getRequest(): 取得HttpServletRequest
HttpServletResponse getResponse():
ServletContext getServletContext():
public LoginAction3() { request = ServletActionContext .getRequest(); session = request.getSession(); application = session.getServletContext(); }