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

Jakarta ee 在j2ee中启动服务器时定期执行方法,jakarta-ee,web.xml,Jakarta Ee,Web.xml,当我启动服务器时,我需要定期执行这个方法,我使用的是TomcatV6.0服务器,作为一个框架,我使用hibernate、JSF、Primefaces和spring。 我是否应该在web.xml中添加一些内容?有几种解决方案,您可以通过这种方式之一满足您的需要 假设您的方法是一个调度任务,您计划在某个间隔秒内运行一次 将任务放在单独的类中,并在上下文成功初始化后安排它 ScheduledExecutorService scheduledExcecutor = Executors.newSchedu

当我启动服务器时,我需要定期执行这个方法,我使用的是TomcatV6.0服务器,作为一个框架,我使用hibernate、JSF、Primefaces和spring。
我是否应该在web.xml中添加一些内容?

有几种解决方案,您可以通过这种方式之一满足您的需要

假设您的方法是一个调度任务,您计划在某个间隔秒内运行一次

将任务放在单独的类中,并在上下文成功初始化后安排它

ScheduledExecutorService scheduledExcecutor = Executors.newScheduledThreadPool(3);
scheduledExcecutor.scheduleWithFixedDelay(yourTaskInstance, 0,
                                           sleepInterval, TimeUnit.MILLISECONDS);
您也可以按固定费率安排,检查文档


当您的服务器关闭时,请优雅地关闭它。

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

  • 弹簧

    您可以为应用程序上下文的启动和关闭阶段实现或接口

  • Tomcat

    您可以通过实现

  • 通用型

  • 配置servlet以在启动时加载
之后,您可以添加以定期执行任务