怎么实现Servlet的自动加载

在实际开发时,有时候会希望某些Servlet程序可以在Tomcat启动时随即启动。但在默认情况下,第一次访问servlet的时候,才创建servlet对象。

如果servlet构造函数里面的代码或者init方法里面的代码比较多,就会导致用户第一次访问servlet的时候比较慢。这个时候,我们可以改变servlet对象的创建时机:提前到加载web应用的时候。在servlet的配置信息中,加上一个<load-on-startup>标签即可。

在web.xml里配置

XML 复制代码
<servlet>
    <servlet-name>loadOnStartup</servlet-name>
    <servlet-class>com.by.servlet.LoadOnStartupServlet</servlet-class>
    <!--容器是否在启动时加载该servlet,数字越小优先级越高越高-->
    <load-on-startup>1</load-on-startup>
</servlet>

servlet实例:

java 复制代码
public class LoadOnStartupServlet implements HttpServlet {
    public LoadOnStartupServlet(){
        System.out.println("LoadOnStartupServlet constructor method has run....");
    }
}

开启tomcat,此时我们可以看到servlet对象随着tomcat启动而随即启动了

任务达成!!!!

相关推荐
凌冰_5 小时前
Thymeleaf Maven+Servlet+Mysql图书框架—4(十)
mysql·servlet·maven
Yorlen_Zhang7 小时前
Python pytest assert 断言
python·servlet·pytest
码农幻想梦21 小时前
实验八 获取请求参数及域对象共享数据
java·开发语言·servlet
IT 行者1 天前
基于Servlet的纯原生Java Web工程之工程搭建:去除依赖的繁琐,返璞归真
java·前端·servlet
jiayong232 天前
Tomcat Servlet容器与生命周期管理面试题
java·servlet·tomcat
星谐2 天前
Bash 双模式解析 + 飞书机器人:圈复杂度报告 45 min→30 s 实战
servlet·bash·飞书
凌冰_3 天前
Thymeleaf Maven+Servlet+Mysql图书框架—3(九)
mysql·servlet·maven
就叫飞六吧4 天前
Jenkins 流水线全流程实战笔记
笔记·servlet·jenkins
程序员老徐5 天前
SpringBoot嵌入Tomcat注册Servlet、Filter流程
spring boot·servlet·tomcat
cly15 天前
Jenkins重置管理员密码
运维·servlet·jenkins