如何在tomcat启动的时候运行一个Java类

设置个Listener就好了,在web.xml中指定描述。

web.xml其实就是tomcat启动的时候会读取的一个描述文件,比如访问服务器的时候首页等都可以在里面指定,有相应的tag。这里有解释:http://blog.chinaunix.net/uid-20399471-id-1687965.html

实现这个Listener的接口:

 1 public class MyServletContextListener implements ServletContextListener {
 2 
 3   @Override
 4   public void contextDestroyed(ServletContextEvent arg0) {
 5     //Notification that the servlet context is about to be shut down.   
 6   }
 7 
 8   @Override
 9   public void contextInitialized(ServletContextEvent arg0) {
10     // do all the tasks that you need to perform just after the server starts
11 
12     //Notification that the web application initialization process is starting
13   }
14 
15 }

然后在web.xml中编写listener的标签,添加listener类:

MyTestListener换成自己实现ServletContextListener接口的类名
<listener>
     <listener-class>[package].MyTestListener</listener-class>
    </listener>
  

references:

http://stackoverflow.com/questions/13819773/how-to-run-specific-java-code-on-tomcat-start-or-on-application-deploy

http://stackoverflow.com/questions/158336/is-there-a-way-to-run-a-method-class-only-on-tomcat-startup

http://crunchify.com/how-to-run-java-program-automatically-on-tomcat-startup/

http://blog.sina.com.cn/s/blog_6ea90e4b0100ny3t.html

原文地址:https://www.cnblogs.com/foohack/p/5033608.html