tomcat启动时候项目被加载了两次

写了一个servletcontext的监听器,监听他启动时候的我发现了servletcontext里面写的线程被启动了两次,再三检查了代码之后发现线程并没有在其他地方被启动,所以就开始怀疑项目是不是被servletcontext的监听器是否是执行两次,因为监听器是随着项目被加载被而开始监听,所以我在想是否是同一个项目被加载了两次。在

 public void contextInitialized(ServletContextEvent servletContextEvent) {
        System.out.print("不好,我被监听到了");
       
    }

这里我们在servletcontext初始化的加入一段代码,然后启动tomcat。通过catalina.out日志不难发现

这里可以看到确实,servletcontext被初始化了两次,所以可以断定项目被启动了两次,然后我们在看servlet.xml里面的配置

这里可以看到项目加载的基础目录是webapps,同时下面还有两个context,把重复的context去掉,就可以解决掉项目被启动两次的问题。ps(在监听器重不要写过于复杂的代码,因为一个项目要等servletcontext监听器里的代码加载完成之后才能加载完,要不项目会启动过慢,甚至项目加载失败)

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值