Servlet的生命周期是有servlet的容器来控制的,它可以分为三个阶段: 初始,运行,销毁。 初始化阶段: 1.Servlet容器加载servlet类,把servlet类的.class文件中的数据读到内存中。 2.然后servlet容器创建一个servletConfig对象,servletConfig对象包含了servlet的初始化配置信息。 3.Servlet容器创建一个servlet对象 4.Servlet容器调用servlet对象的init方法进行初始化。 运行阶段: 1.当servlet容器接收到一个请求时,servlet容器会针对这个请求创建servletRequest和servletResponse对象。 2.然后通过调用service方法,并把这两个参数传给service方法,service方法通过serviceRequest对象获得请求的信息,并处理该请求,再通过servletReponse对象生成这个请求的响应结果,然后销毁servletRequset和servletReponse对象,不管这个请求是get还是post的,最终这个请求都会由service方法来处理。 销毁阶段: 当web应用被终止时,servlet容器会先调用servlet对象的destory方法,然后再销毁servlet对象,同时也会销毁与servlet对象相关联系的servletConfig对象,我们可以在destory方法的实现中,释放servlet所占用的servlet所占用的资源,如关闭数据库的连接,关闭文件输入输出流等。
在servlet生命周期中servlet的初始化和销毁阶段都只会发生一次,而service方法的执行次数则取决于servlet被客户端访问的次数。