In this article解释了如何排除Quartz在特定日历日运行,但我需要的是不同的东西,我需要在上一个或下一个工作日运行作业,如果触发日历在假日结果。
例如,假设作业计划每月运行,包括2019年3月29日星期五,即假日。
这意味着:
实现这一目标的一种方法是每天运行工作并分析它是否应该在当天运行,并在必要时重新触发,但有更好的方法吗?
UPDATE
如果我每天必须触发这项工作,为什么不使用Java EE 8 TimerService呢?
我建议在每个工作日运行它,例如使用Cron Expression(每个工作日下午5点运行)
0 00 17 * * MON-FRI
在由Cron表达式调用的函数内部,您可以调用holidayService.isHoliday(date)来判断日期是否为假日。如果是假日,那么您可以跳过运行报告。