第二步:建立要被定執行的任務類java
這一步也很簡單,只須要建立一個實現了org.quartz.Job接口的類,並實現這個接口的惟一一個方法execute(JobExecutionContext arg0) throws JobExecutionException便可。如:ui
package com.fync.quartz; import java.text.SimpleDateFormat; import java.util.Date; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; /** * 建立要被定執行的任務類 * @author long * */ public class MyJob implements Job{ public void execute(JobExecutionContext context) throws JobExecutionException { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); System.out.println(sdf.format(new Date())); } }
第三步:建立任務調度,並執行spa
package com.fync.quartz; import org.quartz.JobBuilder; import org.quartz.JobDetail; import org.quartz.Scheduler; import org.quartz.SchedulerException; import org.quartz.SchedulerFactory; import org.quartz.SimpleScheduleBuilder; import org.quartz.Trigger; import org.quartz.TriggerBuilder; import org.quartz.impl.StdSchedulerFactory; /** * 建立任務調度,並執行 * @author long * */ public class MainScheduler { //建立調度器 public static Scheduler getScheduler() throws SchedulerException{ SchedulerFactory schedulerFactory = new StdSchedulerFactory(); return schedulerFactory.getScheduler(); } public static void schedulerJob() throws SchedulerException{ //建立任務 JobDetail jobDetail = JobBuilder.newJob(MyJob.class).withIdentity("job1", "group1").build(); //建立觸發器 每3秒鐘執行一次 Trigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group3") .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(3).repeatForever()) .build(); Scheduler scheduler = getScheduler(); //將任務及其觸發器放入調度器 scheduler.scheduleJob(jobDetail, trigger); //調度器開始調度任務 scheduler.start(); } public static void main(String[] args) throws SchedulerException { MainScheduler mainScheduler = new MainScheduler(); mainScheduler.schedulerJob(); } }