Servlet 的生命周期 (摘自JSP2.0技术手册)

(1) 产生 Servlet,加载到Servlet Engine中,然后调用 init( )这个方法来进行初始化工作。

(2) 以多线程的方式处理来自Client 的请求。

(3) 调用 destroy( )来销毁Servlet,进行垃圾收集 (garbage collection)。

Servlet 生命周期的定义,包括如何加载、实例化、初始化、处理客户端请求以及如何被移除。
这个生命周期由javax.servlet.Servlet 接口的 init ( )、service( )和 destroy( )方法表达。

 

Servlet 从产生到结束的流程
1. 加载和实例化
当Container一开始启动, 或是客户端发出请求服务时, Container会负责加载和实例化一个Servlet。 
2. 初始化
Servlet 加载并实例化后,再来Container必须初始化 Servlet。初始化的过程主要是读取配置
信息(例如JDBC连接)或其他须执行的任务。我们可以借助 ServletConfig 对象取得 Container的
配置信息,例如:
 <servlet>
    <servlet-name>HelloServlet</servlet-name>
    <servlet-class>tw.com.javaworld.CH2.HelloServlet</servlet-class> JSP2.0 技术手册
Java爱好者     http://www.javafan.net制作
    <init-param>
       <param-name>user</param-name>
       <param-value>browser</param-value>
    </init-param>
</servlet>
其中user为初始化的参数名称;browser 为初始化的值。因此,可以在 HelloServlet程序中使
用ServletConfig 对象的getInitParameter("user")方法来取得 browser。
3. 处理请求
Servlet 被初始化后,就可以开始处理请求。每一个请求由 ServletRequest 对象来接收请求;
而ServletResponse对象来响应该请求。
4. 服务结束
当 Container 没有限定一个加载的 Servlet 能保存多长时间,因此,一个 Servlet 实例可能只
在Container中存活几毫秒,或是其他更长的任意时间。一旦 destroy( )方法被调用时,Container
将移除该 Servlet,那么它必须释放所有使用中的任何资源,若 Container 需要再使用该 Servlet
时,它必须重新建立新的实例。

你可能感兴趣的:(.net,工作,servlet,jdbc)