什么是Servlet的生命周期?
Servlet是运行在容器之中的,没有main方法,因此整个生命周期是由容器来控制的。
具体而言,Servlet的生命周期可以分为5个阶段。
(1)加载。
容器通过类加载器使用Servlet类对应的文件加载Servlet。
(2)创建。
通过调用Servlet的构造函数来创建一个Servlet实例。
(3)初始化。
通过调用Servlet的init()方法来完成初始化工作,这个方法是在Servlet被创建之后,但是向客户端提供服务之前调用的。init()方法只会调用一次。
(4)处理客户请求。
Servlet创建之后,就可以向客户端提供服务了。有新的请求来到时,容器就会创建一个新的线程来处理这个请求。接着就会调用Servlet的service()方法来完成客户端的请求,service()方法会根据method属性的不同来决定调用doGet还是doPost方法来完成具体的响应。
(5)卸载。
卸载Servlet之前先调用destory()方法,让Servlet自己释放所占用的系统资源,一旦destory方法被调用,容器就不会向Servlet发送任何请求了。destory方法也只会执行一次。如果说客户端还想向Servlet发送请求,就必须重新加载创建并初始化一个实例。