ServletContext是Servlet容器上下文环境对象,定义一组方法,servlet 使用这些方法与其 servlet 容器进行通信,例如,获取文件的 MIME 类型、分发请求或写入日志文件。
每个web应用都有且仅有一个ServletContext对象,这个对象在所有的Servlet都可以使用。
ServletContext 对象包含在ServletConfig 对象中,ServletConfig 对象在初始化Servlet 时由Web 服务器提供给Servlet。
ServletContext在jsp中用application内置对象来表示,而在Servlet中通过调用方法
因为一个web应用就一个ServletContext 对象,因此可以使用ServletContext 来做一些全局性的属性设置等。比如网站访问计数器等等。下面给出一个简单的页面计数器:
getServletContext().getRealPath("/");
上面的代码可以返回应用程序部署绝对路径。
每个web应用都有且仅有一个ServletContext对象,这个对象在所有的Servlet都可以使用。
ServletContext 对象包含在ServletConfig 对象中,ServletConfig 对象在初始化Servlet 时由Web 服务器提供给Servlet。
ServletContext在jsp中用application内置对象来表示,而在Servlet中通过调用方法
ServletContext sc = getServletContext();
来获取。
因为一个web应用就一个ServletContext 对象,因此可以使用ServletContext 来做一些全局性的属性设置等。比如网站访问计数器等等。下面给出一个简单的页面计数器:
<body>
<%
Integer x = (Integer) application.getAttribute("num");
if (x == null) {
application.setAttribute("num", 1);
} else {
application.setAttribute("num", ++x);
}
out.println("您是第"+x+"位访客!");
%>
</body>
获取资源绝对路径:
getServletContext().getRealPath("/");
上面的代码可以返回应用程序部署绝对路径。
ServletContext与ServletConfig的区别: