一.servlet生命周期大致过程
①加载并实例化
Servelt有一个 Servlet容器(例如Tomcat等)负责加载和实例化,然后当Servlet容器启动时,或者在容器检测到需要这个Servlet来响应第一个请求时,他就会创建Servlet实例。当容器启动后,Servlet通过类加载器来加载Servlet类,加载完成后再new一个Servlet对象来完成实例化。
②初始化
servlet 容器调用 servlet 的 init 方法进行初始化,完成一些准备工作。在整个 servlet 的生命周期中,init() 方法只会被调用一次,也就是只会初始化一次。
③服务
servlet容器调用servlet的service方法,去根据客户端的请求方式,去选择一个方法执行(doget dopost)get请求方式是doget方法,post请求方式是dopost方法,对客户的请求做处理,然后对客户作出一个响应。
④销毁
servlet 容器的最后一个阶段,调用 destroy() 方法,销毁创建的对象,整个 servlet 生命周期也就结束了。在整个生命周期里,destroy() 方法只会被调用一次,最后销毁。
二.总结servlet的生命周期过程
1.客户端(浏览器)发送请求
2.servlet 容器负责解析请求,并创建servlet实例
3.servlet 容器调用 servlet 的 init 方法进行初始化
4.servlet 容器调用 servlet 的 service 方法
5.servlet 容器将 servlet 的响应结果返回给客户端
6.当 servlet 重新加载或容器重启时,会调用 servlet 的 destroy 方法