, так как вы уточнили вопрос, вот еще один ответ: как запустить демон в tomcat:
сначала зарегистрируйте своих демонов в web.xml:
<слушатель>
my.package.servlet.Daemons
затем реализуйте класс Daemons как реализацию ServletContextListener
следующим образом:
код будет вызываться каждые 5 секунд, tomcat будет вызывать contextDestroyed при завершении работы вашего приложения. обратите внимание, что переменная является энергозависимой, в противном случае у вас могут возникнуть проблемы с отключением в многоядерных системах
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class Daemons implements ServletContextListener {
private volatile boolean active = true;
Runnable myDeamon = new Runnable() {
public void run() {
while (active) {
try {
System.out.println("checking changed files...");
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
public void contextInitialized(ServletContextEvent servletContextEvent) {
new Thread(myDeamon).start();
}
public void contextDestroyed(ServletContextEvent servletContextEvent) {
active = false;
}
}