我在WildFly上运行的Java EE 8中具有以下任务.
public class MyScheduler {
@Schedules({
@Schedule(dayOfWeek = "Fri",hour = "17")
})
public void performCronTask() {
System.out.println("MyScheduler started.");
}
}
该程序将在每个星期五的17点(下午5点)运行.如果服务器在16时关闭并在18时重启,会发生什么情况?服务器是否将运行任务?我需要以编程方式控制这种情况吗?
最佳答案
是的,它将被执行.根据EJB 3.1,@ Schedule批注包含定义调度程序是否持久的属性.默认情况下,调度程序是持久性的.这是一篇详细介绍如何配置基于编程和注释的计划程序https://www.baeldung.com/scheduling-in-java-enterprise-edition的文章