(一)Servlet

public interface Servlet {
   /*
    *    在Servlet实例化之后,Servlet容器会调用init()方法,来初始化该对象,主要是为了让Servlet对象在处理客户请求前可以完成一些初始化的工作,例如,建立数据库的连接,获取配置信息等。
    *    对于每一个Servlet实例,init()方法只能被调用一次。init()方法有一个类型为ServletConfig的参数,
    *    Servlet容器通过这个参数向Servlet传递配置信息。Servlet使用ServletConfig对象从Web应用程序的配置信息中获取以名?值对形式提供的初始化参数。
    *    另外,在Servlet中,还可以通过ServletConfig对象获取描述Servlet运行环境的ServletContext对象,使用该对象,Servlet可以和它的Servlet容器进行通信。
    */
    public void init(ServletConfig config) throws ServletException;


    //该方法返回容器调用init()方法时传递给Servlet对象的ServletConfig对象,ServletConfig对象包含了Servlet的初始化参数。
    public ServletConfig getServletConfig();
    
    /*
     *    容器调用service()方法来处理客户端的请求。要注意的是,在service()方法被容器调用之前,必须确保init()方法正确完成。
     *    容器会构造一个表示客户端请求信息的请求对象(类型为ServletRequest)和一个用于对客户端进行响应的响应对象(类型为ServletResponse)
     *    作为参数传递给service()方法。在service()方法中,Servlet对象通过ServletRequest对象得到客户端的相关信息和请求信息,
     *    在对请求进行处理后,调用ServletResponse对象的方法设置响应信息。
     */
    public void service(ServletRequest req, ServletResponse res)
            throws ServletException, IOException;
  
    //返回一个String类型的字符串,其中包括了关于Servlet的信息,例如,作者、版本和版权。该方法返回的应该是纯文本字符串,而不是任何类型的标记(HTML、XML等)。
    public String getServletInfo();
    
    /*
     *    当容器检测到一个Servlet对象应该从服务中被移除的时候,容器会调用该对象的destroy()方法,
     *    以便让Servlet对象可以释放它所使用的资源,保存数据到持久存储设备中,
     *    例如,将内存中的数据保存到数据库中,关闭数据库的连接等。当需要释放内存或者容器关闭时,容器就会调用Servlet对象的destroy()方法。
     *    在Servlet容器调用destroy()方法前,如果还有其他的线程正在service()方法中执行,
     *    容器会等待这些线程执行完毕或等待服务器设定的超时值到达。一旦Servlet对象的destroy()方法被调用,
     *    容器不会再把其他的请求发送给该对象。如果需要该Servlet再次为客户端服务,容器将会重新产生一个Servlet对象来处理客户端的请求。
     *    在destroy()方法调用之后,容器会释放这个Servlet对象,在随后的时间内,该对象会被Java的垃圾收集器所回收。
     */
    public void destroy();
}
posted @ 2016-01-18 14:36  姩澕  阅读(170)  评论(0编辑  收藏  举报