毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> java技术 >> 正文

ServletContext的功能与作用是什么

更新时间:2012-10-15:  来源:毕业论文

ServletContext   的功能与用处是什么

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   {

[1] [2] 下一页

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。