在实际开发时,有时候会希望某些Servlet程序可以在Tomcat启动时随即启动。例如,当启动一个Web项目时,首先需要对数据库信息进行初始化。这时,只需要使用web.xml文件中<load-on-startup>元素,将初始化数据库的Servlet配置为随着web应用启动而启动的Servlet即可。
<load-on-startup>元素是<servlet>元素的一个子元素,它用于指定Servlet被加载的时机和顺序。在<load-on-startup>元素中,设置的值必须是一个整数。如果这个值是一个负数,或者没有设定这个元素,Servlet容器将在客户端首次请求这个Servlet时加载它;如果这个值是正整数或0,Servlet容器将在Web应用启动时加载并初始化Servlet,并且<load-on-startup>的值越小,它对应的Servlet就越先被加载。接下来,将文件3-1 HelloWorldServlet.java配置为Tomcat启动时自动加载的Servlet,具体配置方式如下所示:

启动Tomcat服务器,在Tomcat控制台输出的信息中,会发现如图3-12所示的内容。

从图3-12中可以看出,HelloWorldServlet的初始化信息被打印了出来,由此说明,HelloWorldServlet在Tomcat启动时就被自动加载并且初始化了。
网友评论