Servlet生命周期分为三个阶段:
1,初始化阶段:调用init()方法
2,响应客户请求阶段:调用service()方法
3,终止阶段:调用destroy()方法
Servlet初始化阶段:
在下列时刻Servlet容器装载Servlet:
1,Servlet容器启动时自动装载某些Servlet,实现它只需要在web.XML文件中的之间添加如下代码:1
2,在Servlet容器启动后,客户首次向Servlet发送请求
3,Servlet类文件被更新后,重新装载Servlet
Servlet被装载后,Servlet容器创建一个Servlet实例并且调用Servlet的init()方法进行初始化。在Servlet的整个生命周期内,init()方法只被调用一次。
servlet的service方法是不暴露的,当有请求的时候会自动调用的,也就是体现在调用doGet或者doPost上了。
service本身是用来转向的,但是如果你在自己的servlet类中覆盖了service方法,用来处理业务,那么不论你的客户端是用post还是get来请求此servlet,都会执行service方法也只能执行servlet方法,不会去执行doPost或是doGet方法。所以,我们在写servlet的时候,一般都是重写doGet或doPost方法,不会管service方法。