1、 飞 鱼ServletContext 详解ServletContext 是 servlet 与 servlet 容器之间的直接通信的接口。Servlet 容器在启动一个 Web 应用时,会为它创建一个 servletContext对象。每个 web 应用有唯一的 servletContext 对象。同一个 web 应用的所有 servlet 对象共享一个 serveltContext,servlet 对象可以通过它来访问容器中的各种资源。servletContext 接口提供的方法分为以下几种类型:用于在 Web 应用范围内存取共享数据的方法。注:web 应用范围具有以下两层含义:(1) 表示
2、有 web 应用的生命周期构成的时间段.(2) 表示在 web 应用的生命周期内所有 web 组件的集合。 setAttribute(String name,java.lang.Object object):把一个 java 对象和一个属性名绑定,并存放到 ServletContext 中,参数 name指定属性名,参数 Object 表示共享数据。 getAttribute(String name):根据参数给定的属性名,返回一个Object 类型的对象。 getAttributeNames():返回一个 Enumeration 对象,该对象包含了所有存放在 ServletContext 中
3、的属性名。 removeAttribute(String name):根据参数指定的属性名,从servletContext 对象中删除匹配的属性。访问当前 Web 应用的资源 getContextpath():返回当前 web 应用的 URL 入口。飞 鱼 getInitParameter(String name):返回 web 应用方位内的匹配的初始化参数值。在 web.xml 中元素中元素表示应用范围内的初始化参数。 getInitParameterNames():返回一个 Enumeration 对象。 getServletContextName():返回 web 应用的名字。即 元素中
4、元素的值。 getRequestDispatcher(String path):返回一个用于向其他 web 组件转发请求的 RequestDispatcher 对象。访问 servlet 容器的相关信息 getContext(String uripath):根据参数指定的 url,返回当前 servlet容器中其他 web 应用的 servletContext()对象。反问 web 容器的相关信息 getMajorVersion():返回 servlet 容器支持的 java servlet API 的主板本号。 getMinorVersion():返回 servlet 容器支持的 java
5、Servlet API 的此版本号。 getServerInfo():返回 servlet 容器的名字和版本。访问服务器端的文件系统资源 getRealPath(String path):根据参数指定的虚拟路径,返回文件系统中的一个真实的路径。飞 鱼 getResource(String path):返回一个映射到参数指定的路径的url。 getResourceAsStream(String path):返回一个用于读取参数指定的文件的输入流。 (把文件读到输入流中去) getMimeType(String file):返回参数指定的文件的 MIME 类型。输出日志 log(String msg):想 servlet 的日志文件中写日志。 log(String message, java.lang.Throwable throwable):向servlet 的日志文件中写错误日志,以及异常的堆栈信息。ServletContext 对象获得几种方式:Javax.servlet.http.HttpSession.getServletContext() Javax.servlet.jsp.PageContext.getServletContext() Javax.servlet.ServletConfig.getServletContext()