四种方式
private ServletRequest request;
private ServletResponse response;
private ServletContext con;
1.拦截器方式 实现 ServletRequestAware ,ServletResponseAware , ServletContxtAware
public void setServletRequest(HttpServletRequest arg0) {
request = arg0;
}
public void setServletResponse(HttpServletResponse arg0) {
response = arg0;
}
public void setServletContext(ServletContext arg0) {
con = arg0;
}
2.拦截器方式 实现 RequestAware
public void setRequest(Map<String, Object> arg0) {
request = (ServletRequest)arg0.get(StrutsStatics.HTTP_REQUEST);
response = (ServletResponse)arg0.get(StrutsStatics.HTTP_RESPONSE);
con = (ServletContext)arg0.get(StrutsStatics.SERVLET_CONTEXT);
}
3.通过ActionContext方式获取
ActionContext ac = ActionContext.getContext();
ServletRequest request = (ServletRequest)ac.get(ServletActionContext.HTTP_REQUEST);
ServletResponse response = (ServletResponse)ac.get(ServletActionContext.HTTP_RESPONSE);
ServletContext con = (ServletContext)ac.get(ServletActionContext.SERVLET_CONTEXT);
4.通过ServletActionContext
ServletRequest request = ServletActionContext.getRequest();
ServletResponse response = ServletActionContext.getResponse();
ServletContext con = ServletActionContext.getServletContext();