package com.yjck.quartz;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SimpleTrigger;
import org.quartz.impl.StdSchedulerFactory;
public class QuartzTest {
public static void main(String[] args) throws InterruptedException {
QuartzTest tqz = new QuartzTest();
try {
tqz.startShedule();
} catch (SchedulerException e) {
e.printStackTrace();
}
}
protected void startShedule() throws SchedulerException {
/* 调度器 */
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
/* 具体执行类 */
JobDetail jobDetail = new JobDetail("firstJOB",
scheduler.DEFAULT_GROUP, MyJobClass.class);
// 触发器,定义每3秒执行一次
// Trigger trigger = TriggerUtils.makeSecondlyTrigger(3);
/* 简单触发器,相当于java timetask,CronTrigger 是更为发展的触发器,有cron表达式 */
SimpleTrigger trigger = new SimpleTrigger("triger1",
scheduler.DEFAULT_GROUP, 10, 2000);
scheduler.scheduleJob(jobDetail, trigger);
scheduler.start();
// scheduler.shutdown();
}
}
/*事件类,处理具体的业务*/
package com.yjck.quartz;
import java.util.Date;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class MyJobClass implements Job{
/*事件类,处理具体的业务*/
public void execute(JobExecutionContext job) throws JobExecutionException {
System.out.println("hello quartz"+ new Date());
}
}
项目结构如下