Servlet 自启动
有时候需要 Tomcat 启动的同时,就执行一些初始化的代码,比如校验数据库的完整性等。
Servlet 的生命周期是在用户访问浏览器对应的路径开始的。如果没有用户的第一次访问,就无法执行相关代码。
这个时候,就需要 Servlet 实现自启动 即,伴随着 Tomcat 的启动,自动启动初始化,在初始化方法 init()
中,就可以进行一些业务代码的工作。
load-on-startup
在 web.xml 中,配置 HelloServlet
的地方,增加一句 <load-on-startup>10</load-on-startup>
,取值范围是 1-99
。即表明该 Servlet 会随着 Tomcat 的启动而初始化。
在 Tomcat 完全启动之前,会先执行 init
方法。同时,为 HelloServlet 提供一个 init(ServletConfig) 方法,验证自启动。
<load-on-startup>10</load-on-startup>
中的 10 表示启动顺序。如果有多个 Servlet 都配置了自动启动,数字越小,则启动的优先级越高。