我正在使用Quartz 2 Scheduler来计划任务。以下是我需要的。
用户单击按钮时安排工作。
该作业应安排为每3天在上午8点运行。
以下是我的编码方式。一旦用户单击Web应用程序中的按钮,它将执行(当然还有其调度程序)
Trigger passportTrigger1 = newTrigger()
.withIdentity(passportTriggerKey1)
.withSchedule(simpleSchedule().withIntervalInHours(3*24).repeatForever())
.startAt(todayAt(8,0,0)).build();
但是,您可以看到我使用了
startAt(todayAt(8,0,0))
。如果用户今天凌晨8:00打开调度程序,会发生什么情况?该作业将立即安排,还是永远不会安排? 最佳答案
您还可以检查当前时间:如果是在上午8点之前startAt(todayAt(8, 0, 0)
,否则是startAt(tomorrowAt(8, 0, 0))
。
关于java - 计划任务在给定时间每3天运行一次,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29093015/