龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

Java Servlet API说明文档(2.1a版)(二)

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
API对象的说明 这一部分包含了对Java Servlet API的全部类和接口的具体说明。这个说明与Javadoc API差不多,但是这份文档提供了更多的信息。 API包含了两个软件包,十二个接口和九个类。

  API对象的说明
   这一部分包含了对Java Servlet API的全部类和接口的具体说明。这个说明与Javadoc API差不多,但是这份文档提供了更多的信息。
  API包含了两个软件包,十二个接口和九个类。
  软件包:javax.servlet
  所包含的接口:RequestDispatcher;Servlet;ServletConfig;ServletContext;ServletRequest;ServletResponse;SingleThreadModel。
  所包含的类:GenericServlet;ServletInputStream;ServletOutputStream;ServletException;UnavailableException。
  
   一、RequestDispatcher接口:
   定义:
   public interface RequestDispatcher;
   定义一个对象,从客户端接收请求,然后将它发给服务器的可用资源(例如Servlet、CGI、Html文件、jsp文件)。Servlet引擎创建request dispatcher对象,用于封装由一个特定的URL定义的服务器资源。
   这个接口是专用于封装Servlet的,但是一个Servlet引擎可以创建request dispatcher对象用于封装任何类型的资源。
   request dispatcher对象是由Servlet引擎建立的,而不是由Servlet开发者建立的。
   方法
   1、forward
   public void forward(ServletRequest request, ServletReponse response)
   throws ServletException, IOException;
   被用来从这个Servlet向其它服务器资源传递请求。当一个Servlet对响应作了初步的处理,并要求其它的对象对此作出响应时,可以使用这个方法。
   当request对象被传递到目标对象时,请求的URL路径和其他路径参数会被调整为反映目标对象的目标URL路径。
   假如已经通过响应返回了一个ServletOutputStream对象或PrintWriter对象,这个方法将不能使用,否则,这个方法会抛出一个IllegalStateException。
   2、include
   public void include(ServletRequest request, ServletResponse response)
   throws ServletException, IOException
   用来包括发送给其他服务器资源的响应的内容。本质上来说,这个方法反映了服务器端的内容。
   请求对象传到目标对象后会反映调用请求的请求URL路径和路径信息。这个响应对象只能调用这个Servlet的ServletOutputStream对象和PrintWriter对象。
   一个调用include的Servlet不能设置头域,假如这个Servlet调用了必须设置头域的方法(例如cookie),这个方法将不能保证正常使用。作为一个Servlet开发者,你必须妥善地解决那些可能直接存储头域的方法。例如,即使你使用会话跟踪,为了保证session的正常工作,你必须在一个调用include的Servlet之外开始你的session
  
   二、Servlet接口。
   定义
   public interface Servlet
   这个接口定义了一个Servlet:一个在Web服务器上继续了这个功能的Java类。
   方法
   1、init
   public void init(ServletConfig config) throws ServletException;
   Servlet引擎会在Servlet实例化之后,置入服务之前精确地调用init方法。在调用service方法之前,init方法必须成功退出。
   假如init方法抛出一个ServletException,你不能将这个Servlet置入服务中,假如init方法在超时范围内没完成,我们也可以假定这个Servlet是不具备功能的,也不能置入服务中。
   2、service
   public void service(ServletRequest request, ServletResponse response)
   throws ServletException, IOException;
   Servlet引擎调用这个方法以答应Servlet响应请求。这个方法在Servlet未成功初始化之前无法调用。在Servlet被初始化之前,Servlet引擎能够封锁未决的请求。
   在一个Servlet对象被卸载后,直到一个新的Servelt被初始化,Servlet引擎不能调用这个方法
   3、destroy
   public void destroy();
   当一个Servlet被从服务中去除时,Servlet引擎调用这个方法。
  
精彩图集

赞助商链接