Trigger 就是觸發器的意思,用來指定什麼時間開始觸發,觸發多少次,每隔多久觸發一次 SimpleTrigger 可以方便的實現一系列的觸發機制。 1.下一個8秒的倍數開始運行: public class SimpleTriggerDemo { public static void main(S ...
Trigger 就是觸發器的意思,用來指定什麼時間開始觸發,觸發多少次,每隔多久觸發一次
SimpleTrigger 可以方便的實現一系列的觸發機制。
1.下一個8秒的倍數開始運行:
public class SimpleTriggerDemo { public static void main(String[] args) throws Exception{ Scheduler scheduler= StdSchedulerFactory.getDefaultScheduler(); Date startTime = DateBuilder.nextGivenSecondDate(null, 8); JobDetail job=JobBuilder.newJob(MailJob.class) .withIdentity("job1","group1") .usingJobData("email","憨批!") .build(); SimpleTrigger trigger=(SimpleTrigger) TriggerBuilder.newTrigger() .withIdentity("job1","group1") .withSchedule(simpleSchedule().withIntervalInSeconds(1).withRepeatCount(5)) .startAt(startTime) .build(); Date ft = scheduler.scheduleJob(job, trigger); System.out.println("當前時間是:" + new Date().toLocaleString()); System.out.printf("%s 這個任務會在 %s 準時開始運行,累計運行%d次,間隔時間是%d毫秒%n", job.getKey(), ft.toLocaleString(), trigger.getRepeatCount()+1, trigger.getRepeatInterval()); scheduler.start(); Thread.sleep(200000); scheduler.shutdown(true); } }
2.10秒後運行
Date startTime = DateBuilder.futureDate(10, DateBuilder.IntervalUnit.SECOND);
3.無限重覆,間隔1秒