|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
ServletContext接口简述 ServletContext接口的简述:public interface ServletContext 定义了一系列方式用于与相应的servlet容器通信,比如:获得文件的MIME类型,分派哀求,或者是向日志文件写日志等。 每一个web-app只能有一个ServletContext,web-app可以是一个放置有web application 文件的文件夹,也可以是一个.war的文件。 ServletContext对象包含在ServletConfig对象之中,ServletConfig对象在servlet初始化时提供servlet对象。 getContext()方式概述:public ServletContext getContext(java.lang.String uripath) 返回一个指定URL地址的ServletContext对象。 该方式答应servlets获得对服务器的各部分上下文的访问权,并根据需要从上下文获得RequestDispatcher对象。这个指定的URL路径必须带有"/",被解释为服务器文档根目录下的相对路径,并跟其它web-app主机的上下文根目录匹配。 在一个安全的环境下,servlet容器会返回null。 getMajorVersion()方式概述:public int getMajorVersion() 返回servlet容器支持的Servlet API的版本号,所有实现都必须返回整型数2。 getMinorVersion()方式略。 getMimeType()方式概述:public java.lang.String getMimeType(java.lang.String file) 返回指定文件的文件类型,假如文件类型未知,则返回null。文件类型由servlet容器的配置决定并在一个web-app中被指定。一般情况下的文件类型是:"text/html" 和"image/gif"。 getResourcePaths()方式概述:public java.util.Set getResourcePaths(java.lang.String path) 返回一个存储web-app中所有资源路径的Set(集合)。 路径以”/"结尾表示一个子目录,并以"/"开头表示一个对于web-app的相对路径。 例子: /welcome.html /catalog/index.html /catalog/products.html /catalog/offers/books.html /catalog/offers/music.html /customer/login.jsp /WEB-INF/web.xml /WEB-INF/classes/com.acme.OrderServlet.class, getResourcePaths("/") 将返回Set {"/welcome.html", "/catalog/", "/customer/", "/WEB-INF/"}; getResourcePaths("/catalog/") 将返回Set {"/catalog/index.html", "/catalog/products.html", "/catalog/offers/"}。 假如子目录为空,返回null。 getResource()方式概述:public java.net.URL getResource(java.lang.String path) throws java.net.MalformedURLException 返回由path指定的资源路径对应的一个URL对象,该path必须以“/"开头并作为当前目录的相对位置。 该方式答应servlet容器使serlets中的一个资源变为可用。该资源答应是一个本地资源或者是一个远程文件系统,这些资源可以在数据库中,或者在一个.war文件中。 servlet容器必须实现URL句柄和URLCOnnection对象,这些对象对于资源访问是必需的。 假如没有匹配的资源,该方式返回null。 某些容器甚至可以向该方式所返回的资源写数据。 这个资源可以直接返回,所以哀求一个a.jsp文件将返回JSP源文件。用一个RequestDispatcher对象取而代之,可以包含执行的结果。 这个方式功能有别于java.lang.Class.getResource,一个基于class loader检索资源的方式。但前者不依靠于class loaders。 getResourceAsStream()方式概述:public java.io.InputStream getResourceAsStream(java.lang.String path) 返回一个由String path指定位置资源的InputStream。返回的InputStream可以是任意类型和长度的。 getRequestDispatcher()方式概述:public RequestDispatcher getRequestDispatcher(java.lang.String path) 返回一个RequestDispatcher对象,该对象扮演着一个给定资源包装者的角色。一个RequestDispatcher对象可以用于传送一个哀求到特定资源或者把特定资源包含到一个响应当中。该特定资源可以是动态的也可以是静态的。 通过getContext()方式可以为外部contexts资源获取RequestDispatcher对象。假如ServletContext不能获取RequestDispatcher对象,返回null。 getNamedDispatcher()方式概述:public RequestDispatcher getNamedDispatcher(java.lang.String name) 为指定名字的servlet对象返回一个RequestDispatcher对象。Servlet和JSP页面可以通过服务器治理或web application deployment descriptor被命名。一个Servlet实例的名称可以由ServletConfig.getServletName()决定。 getServlet()方式、getServlets()方式、getServletNames()方式,不推荐使用。 log(java.lang.String msg)方式概述:public void log(java.lang.String msg) 把指定的信息写进servlet日志文件,通常是事物日志。日志文件的名称和类型与servlet容器有关。 public void log(java.lang.Exception exception,java.lang.String msg) 略 public void log(java.lang.String message,java.lang.Throwable throwable) 略 getRealPath()方式概述:public java.lang.String getRealPath(java.lang.String path) 返回一个指定虚拟路径的真实路径(完整路径)的字符串。 举例:虚拟路径"/index.html"将返回服务器文件系统中的绝对路径"http://host/contextPath/index.html", 当中的contextPath是ServletContext的上下文路径。 返回的路径将适用于servlet容器所运行的操作系统。如果无法把虚拟路径映射为真实路径,该方式将返回null。(比如当路径指定的内容是源于.war文件) getServerInfo()方式概述:public java.lang.String getServerInfo() 返回servlet容器的名称和版本号。 返回的字符串格式是servername/versionnumber(服务器名/版本号),例如:the JavaServer Web Development Kit 将返回字符串”JavaServer Web Dev Kit/1.0”。 servlet容器还将返回其它可选信息,如:“JavaServer Web Dev Kit/1.0 (JDK 1.1.6; Windows NT 4.0 x86)” getInitParameter()方式概述:public java.lang.String getInitParameter(java.lang.String name) 返回上下文定义的变量的值,假如变量不存在,返回null。 见ServletConfig.getInitParameter(java.lang.String)。 getInitParameterNames()方式概述:public java.util.Enumeration getInitParameterNames() 返回上下文定义的所以变量的枚举函数,假如空则返回空枚举函数。 getAttribute()方式概述:public java.lang.Object getAttribute(java.lang.String name) 返回指定名字的servlet容器变量值,假如无该变量则返回null。 getAttributeNames()方式概述:public java.util.Enumeration getAttributeNames() 返回servlet容器的所有变量的枚举函数,假如空则返回空枚举函数。 setAttribute()方式概述:public void setAttribute(java.lang.String name,java.lang.Object object) 在servlet容器内绑定一个指定对象给一个指定的名字。假如该名字已经绑定到一个对象,则用该对象覆盖之。 If listeners are configured on the ServletContext the container notifies them accordingly. (不会翻译,求助) 假如传递一个null值,则相称于调用removeAttribute()。 removeAttribute()方式概述:public void removeAttribute(java.lang.String name) 移除指定名字的servlet容器变量。 getServletContextName()方式概述:public java.lang.String getServletContextName() 返回web application的名字。 最后,见Servlet.getServletConfig(), ServletConfig.getServletContext() 〔StartupServlet.java〕 /* * @class: StartupServlet * @version: 1.0 * @Date: 2004/12/16 15:51:40 */ package com.chinacreator.ac.javabean.servlet; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.net.*; import com.chinacreator.tousu.application.*; import com.chinacreator.tousu.application.ApplicationDocument.*; import com.chinacreator.ac.javabean.log.*; import com.chinacreator.ac.javabean.util.*; import com.chinacreator.ac.javabean.servlet.*; /** * * <p>Title: StartupServlet</p> * <p>Description: 启动加载的servlet类</p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: chinacreator</p> * @author hui.deng * @version 1.0 * @see */ public class StartupServlet extends HttpServlet { private static final Log log = new Log(StartupServlet.class); private ApplicationDocument document = null; //Initialize global variables public void init() throws ServletException { ServletContext application = this.getServletContext(); AccessControlFacade facade = new AccessControlFacade(); DictionaryProcessor dictionaryProcessor = facade.getAllDictionariesWrapper(); /** * 存入字典 * @param dictionaryProcessor 字典处理器 */ application.setAttribute(Constant.DICTIONARY_OBJECT_NAME, dictionaryProcessor); } } 〔web.xml〕 <servlet> <servlet-name>startupservlet</servlet-name> <servlet-class>com.chinacreator.ac.javabean.servlet.StartupServlet</servlet-class> <load-on-startup>10</load-on-startup> </servlet> <servlet-mapping> <servlet-name>startupservlet</servlet-name> <url-pattern>/startup</url-pattern> </servlet-mapping> 〔get.jsp〕 /** * 取出字典 * @return Object 字典处理器 */ public Object getDictionaryProcessor() { return application.getAttribute(Constant.DICTIONARY_OBJECT_NAME); } 返回类别: 教程 上一教程: JDOM 介绍及使用指南 下一教程: java入门文章--安装 您可以阅读与"JAVA:ServletContext应用"相关的教程: · Java动态调用类方式的应用 · 应用JAVA技术实现数据库应用系统 · 漫谈Java程序设计中的接口应用 · WEB应用中JAVA的速度真相探讨 · 为您的Java应用程序添加退出事件处理 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |