我在j2ee中启动服务器时定期执行方法

时间:2015-08-26 10:44:03

标签: java-ee web.xml

我需要在启动服务器时定期执行方法,我使用Tomcat v6.0 Server,作为框架,我使用hibernate,JSF,Primefaces和spring。 我应该在web.xml中添加一些内容吗?

2 个答案:

答案 0 :(得分:0)

有几种解决方案,您可以通过这种方式满足您的需求。

假设您的方法是您计划在某个时间间隔内运行一次的Dispatch任务

将您的任务保持在单独的课程中,并在您的上下文成功启动后安排它

ScheduledExecutorService scheduledExcecutor = Executors.newScheduledThreadPool(3);
scheduledExcecutor.scheduleWithFixedDelay(yourTaskInstance, 0,
                                           sleepInterval, TimeUnit.MILLISECONDS);

您也可以使用固定费率安排,查看ScheduledExecutorService文件

在服务器关闭时正常关闭它。

答案 1 :(得分:0)

根据您的应用程序环境,您可以使用以下任何方式添加启动挂钩。

之后,您可以添加ScheduledThreadPoolExecutor以定期执行任务。