首页技术文章正文

如何实现Tomcat启动时Servlet程序的自动加载?

更新时间:2022-04-12 来源:黑马程序员 浏览量:

在实际开发时,有时候会希望某些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,具体配置方式如下所示:

<servlet>
    <servlet-name>HelloWorldServlet</servlet-name>
    <servlet-class>
        cn.itcast.firstapp.servlet.HelloWorldServlet
    </servlet-class>
    <!--设置Servlet在Web应用启动时初始化-->
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>HelloWorldServlet</servlet-name>
    <url-pattern>/helloWorldServlet</url-pattern>
</servlet-mapping>

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

Tomcat运行结果

运行结果

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







猜你喜欢:

Servlet是用来做什么的?Servlet技术的特点

Java面试题Tomcat的优化经验

require()的模块加载规则

Java培训之ServletContext的介绍与获取

黑马程序员Java高级软件工程师培训

分享到:
在线咨询 我要报名
和我们在线交谈!