使用ServletActionContext访问Servlet API
action访问Servlet API,通过ruquest、session、applicplition去访问Servlet API。
web应用中同城需要访问的servletAPI就是HTTPservletRequest、httpsession和servletContext
这三个接口分别代表JSP中内置对象中的request、session、application
Struts 2 提供了一个actionContent类,Struts 2的action可以通过该类来访问ServletAPI
为了能够直接访问Servlet API,struts 2 还提供了一个ServletAction工具类,这个类包含了如下几个静态方法
返回值 | 方法名 | 功能描述 |
HttpServletRequest | getRequest() | 获得Web应用的HttpServletRequest对象 |
HttpServletResponse | getResponse() | 获得Web应用的HttpservletResponse对象 |
ServletContext | getServletContext() | 获得Web应用的ServletContext对象 |
PageContext | getServletContext() | 获得Web应用的ServletContext对象 |
借助于ServletActionContext工具类的帮助,Action能以更加简单的方式来访问Servlet API。
public class BaAction extends ActionSupport implements SessionAware,RequestAware {
@Override
public void setSession(Map<String, Object> session) {
this.session = session;
httpRequest = ServletActionContext.getRequest();
context = httpRequest.getSession().getServletContext();
response = ServletActionContext.getResponse();
}
}
转载于:https://blog.51cto.com/2091535/1907200