Servlet有良好的生存期的定义,包括加载和1.实例化2.初始化3.处理请求以及4.服务结束。这个生存期由javax.servlet.Servlet接口的init(初始化),service(服务)和destroy(销毁)方法表达,即servlet从生到被销毁经历上述四个阶段
Servlet被服务器实例化后,容器运行其init方法,请求到达时运行其service方法,service方法自动派遣运行与请求对应的doXXX方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy方法。
web容器加载servlet,生命周期开始。通过调用servlet的init()方法进行servlet的初始化。通过调用service()方法实现,根据请求的不同调用不同的do***()方法。结束服务,web容器调用servlet的destroy()方法。最后通过垃圾回收,在servlet被销毁后,该实例将等待被垃圾收集器回收,如在被回收前再次使用此servlet,会重新用init()方法初始化