servlet的生命周期起始于一个Servlet类被加载到servlet容器中,结束于这个Servlet类被销毁或被重新载入。
生命周期的三个阶段:初始化阶段、响应客户端请求阶段、销毁阶段。
首先,servlet容器启动时创建了一个servlet实例。
初始化:创建servlet实例后会调用init()方法进行初始化,在servlet的整个生命周期中,init()方法
只调用一次。先说说 init(ServletConfig config) 中的ServletConfig是配置信息的意思,
即当执行此init方法的时候自动读取web.xml的配置参数信息并将参数信息保存到config对象
中。在初始化的时候应先调用带参数的init(ServletConfig config)方法,然后在调用无参
的init()方法,这样做是为了用户在写Servlet时调用init方法时忘记了写参数而出现空指针
异常。
响应客户端请求阶段:service()方法为接口中的方法,当客户端的请求到达web容器时,web容器将
请求转交给servlet容器,servlet容器便会创建一个请求对象和一个响应对
象并调用service()方法。service()方法根据请求信息将调用相应的方法,
如doGet()方法和doPost()方法。
销毁阶段:当WEB服务器不在需要Servlet实例时,WEB服务器将卸载Servlet实例,调用Servlet类的
Destroy()方法将其销毁。