Struts2获取web资源的四种方式

方式一:拦截器方式

实现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()

你可能感兴趣的:(Web,struts2)