servlet生命周期

servlet生命周期

1.加载和实例

Servlet不能独立运行,它必须被部署到Servlet容器中,由容器实例化和调用Servlet的方法。当Servlet容器启动或者当客户端发送一个请求时,Servlet容器会查找内存中是否在Servlet实例,如果不存在,就创建一个Servlet实例。如果存在该Servlet的实例,就直接从内存中取出实例相应请求。

注:Servlet容器根据Servlet类的位置加载Servlet类,加载成功后,由容器创建Servlet实例

2.初始化

在实例化完成后,Servlet容器将调用Servletinit()方法进行初始化,初始化的目的是让Servlet对象在处理客户端请求前完成一些工作。例如:设置连接参数,建立JDBC连接。

注:对于每个Servlet实例,init()方法只能被调用一次。

3.服务

Servlet 被初始化后,就处于能响应请求的就绪状态。当Servlet容器接收客户端请求时,调用Servletservice()方法处理请求客户端请求。Servlet实例通过ServletRequest对象获得客户端的请求,通过调用ServletResponse对象的方法设置响应信息。

4.销毁

Servlet容器判断一个Servlet是否应当被释放时(关闭容器或需要回收资源),容器就会调用Servletdestroy()方法,该方法指明那些资源可以被系统回收,而不是直接回收。

注:在服务器停止时,或者系统回收资源时,destroy()方法才被执行。

原文地址:https://www.cnblogs.com/liuyangv/p/8318924.html