ServletActionContext访问Servlet API

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ServletActionContext访问Servlet API相关的知识,希望对你有一定的参考价值。

使用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();
	}
}


以上是关于ServletActionContext访问Servlet API的主要内容,如果未能解决你的问题,请参考以下文章

struts2笔记05-ServletActionContext

java如何将导出的excel下载到客户端

Struts2的数据封装

转:ServletContext,ActionContext,ServletActionContext

HttpServletRequest request = ServletActionContext.getRequest();为null的问题

struts2笔记06-ServletXxxAware接口