在特定日期内跳过石英调度程序特定时间

时间:2015-06-28 13:20:46

标签: java quartz-scheduler job-scheduling

如果想在特定日期的特定时间跳过调度程序。 例如,我有以下列表:

 15-June-2015 Time: 4:00 AM to 5:00 AM
 17-June-2015 Time: 12:00 PM to 1:00 PM
 17-July-2015 Time: 11:00 PM to 12:00 AM
 19-August-2015 Time: 12:00 PM to 1:00 PM
 21-November-2015 Time: 7:00 AM to 10:00 PM

我应该使用哪种石英日历?有没有办法实现这种实现?我知道有不同类型的日历可用,如年度,假日,cron,每周,每月。 但看起来他们都不能在上面的例子中实现。

1 个答案:

答案 0 :(得分:1)

不确定Quartz Schedular中是否有任何选项。但是,你可以用Java做到这一点。创建一个具有日期和时间的表。并且,在您的课堂上,检查具体的日期和时间。如果匹配则跳过任务。见下面的代码。

public class SchedularJob implements Job {

    public void execute(JobExecutionContext context)
            throws JobExecutionException {
        if (checkDateTime()) {
            System.out.println("Skip the job");
        }else{
           System.out.println(" : Job Executed..!!"); // execute your Job.
        }                     

    }

}

让我知道任何疑问。