servlet的生命周期,就是从创建到销毁的过程
生命周期的相关方法
- init()
- 在创建该servlet实例时,调用该方法;
- 一个servlet只会初始化一次,init方法也只会执行一次;
- 默认是首次访问servlet时创建servlet实例,调用init方法
- service()
- 只要客户端发送请求,就需要执行该方法处理;
- 该方法可以被执行多次,一个请求对应一个service方法的处理执行
- destroy()
- servlet销毁的时候调用该方法,servlet容器控制servlet实例的销毁
- 项目从tomcat中移除
- tomcat正常结束,shutdown.bat
- 注:doGet 和 doPost不算生命周期方法,所谓的生命周期方法是指,从对象的创建到销毁一定会执行的方法, 但是这两个方法,不一定会执行。
那么这个时候,初次访问,可能会在init方法中逗留太久的时间。 那么有没有方法可以让这个初始化的时机提前一点。
在配置的时候, 使用load-on-startup元素来指定, 给定的数字越小,启动的时机就越早。 一般不写负数, 从2开始即可。
<servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>com.qf.servlet.HelloServlet</servlet-class> <load-on-startup>2</load-on-startup> </servlet>