Servlet在Web容器中运行时,其实例的创建与销毁等都不是由程序员决定的,而是 由Web容器进行控制的。 每个Servlet的运行都遵循如下的生命周期:
容器帮助我们创建Servlet实例
Web容器调用HttpServlet的init()方法,对Servlet进行初始化。
Servlet初始化后,将一直存在于容器中,用于响应客户端请求。无论客户端 发送GET还是POST请求, 无论是否重写doGet()还是doPost()方法,都会先 访问service()方法来处理(观察源码)。
Web容器决定销毁Servlet时,先调用Servlet的destroy()方法。
(第一次访问/load-on-startUp)服务器创建对象 并调用 init方法
(以后访问都从这里开始)Service方法 -- doget/dopost -- end
(服务器移除该项目时 或 对web.xml改变内容时:) 调用 destroy 方法 销 毁