Tomcat启动两次,定时任务加载两次

Tomcat启动两次,定时任务加载两次

    • 影响:
    • 分析:
    • 解决方法:

影响:

每次tomcat启动,Java代码会被加载两次, 如果有定时器类的东西业务,那么定时器也会有两份在跑,会影响业务。

分析:

根据server.xml里配置的,Tomcat首先根据的配置内容生成第一个StandardContext对象,加载一次项目。然后再根据Host/appBase的配置对webapps下面的项目生成第二个StandardContext,再加载一次项目。Tomcat针对同一项目生成两个StandardContext的原因就是因为他们的名字不同,Tomcat认为是两个Context,所以加载了两次。

解决方法:

不要把项目放入webapps目录下(可以在Tomcat根目录建一个文件夹,把项目发布进去),设置server.xml, appBase="" 为空,然后配置标签

   

你可能感兴趣的:(java,Tomcat)