方式一:拦截器方式
实现ServletRequestAware接口,可以获取request(ServletRequest类型)对象
实现ServletResponseAware接口,可以获取response(ServletResponse类型)对象
实现ServletContextAware接口,可以获取servletContext(ServletContext类型)对象
方式二:使用RequestAware拦截器
实现RequestAware接口
可在同一个方法内部同时获取到三种
(ServletRequest类型)request = (ServletRequest)arg0.get(StrutsStatics.HTTP_REQUEST)
......
方式三:使用struts2的静态对象获取
(1):使用ActionContext对象
ActionContext ac = ActionContext.getContext()
(ServletRequest类型)request = (ServletRequest)ac.get(ServletActionContext.HTTP_REQUEST)
......
(2)通过ServletActionContext对象直接获取(推荐)
ServletRequest request = ServletActionContext.getRequest()
ServletResponse response = ServletActionContext.getResponse()
ServletContext Context = ServletActionContext.getServletContext()