怎么实现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启动而随即启动了

任务达成!!!!

相关推荐
CodeZ-Hao27 分钟前
gitea启用状态检查结合jenkins工作流实现pr门禁
servlet·jenkins·gitea
怒放de生命201031 分钟前
使用jenkins最新版操作指南
运维·servlet·jenkins
学网安的肆伍4 小时前
【032-安全开发篇】JavaEE应用&Servlet路由技术&JDBC&Mybatis数据库&生命周期
安全·servlet·java-ee
芒克芒克16 小时前
JavaWeb 文件上传全方案解析:从传统组件到现代框架实现
java·spring boot·spring·servlet·maven
q***16086 天前
报错The default superclass, “jakarta.servlet.http.HttpServlet“(已经配置好tomcat)
http·servlet·tomcat
Fantasydg8 天前
Servlet学习
学习·servlet
Apache IoTDB8 天前
时序数据库 IoTDB 集成 MyBatisPlus,告别复杂编码,简化时序数据 ORM 开发
数据库·struts·servlet·时序数据库·iotdb
Stella25218 天前
【Jenkins/Termius/集群概念】
运维·servlet·jenkins
2301_801252229 天前
Servlet 的 URLPattern配置
servlet
残花月伴10 天前
天机学堂——day1(修改bug)
servlet·bug