测试jar版本:quartz-1.6.0.jar
Job类:
import java.util.Date;
import org.quartz.Job;
import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class OrderJob implements Job {
@Override
public void execute(JobExecutionContext jobCtx) throws JobExecutionException {
JobDataMap jobDataMap = jobCtx.getJobDetail().getJobDataMap();
String test = jobDataMap.getString("test");
System.out.println(new Date() + "/" + test);
}
}
Test类:
import java.util.Date;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.SimpleTrigger;
import org.quartz.impl.StdSchedulerFactory;
import cn.zhang.job.OrderJob;
public class TestTask {
public static void main(String[] args) {
try {
//通过SchedulerFactory获取一个调度器实例
SchedulerFactory schedulerFactory = new StdSchedulerFactory();
Scheduler scheduler = schedulerFactory.getScheduler();
System.out.println("============begin===========");
int i = 0;
//创建一个JobDetail实例,指定SimpleJob
JobDetail jobDetail = new JobDetail("jobDetail-" + i, "jGroup" + i, OrderJob.class);
jobDetail.getJobDataMap().put("test", "这是传到job中的值");
//通过SimpleTrigger定义调度规则:马上启动,每5秒运行一次,共运行10次
SimpleTrigger simpleTrigger = new SimpleTrigger("simpleTrigger-" + i, "tgroup" + i);
simpleTrigger.setStartTime(new Date(System.currentTimeMillis() + 6000L));//当前时间推迟6s执行
simpleTrigger.setRepeatInterval(5000);//执行时间间隔5s
simpleTrigger.setRepeatCount(10);//循环10次,默认实际次数为设定次数+1为11次,如果无限循环请使用:SimpleTrigger.REPEAT_INDEFINITELY
scheduler.scheduleJob(jobDetail, simpleTrigger);//注册并进行调度
scheduler.start();//调度启动
System.out.println("=============end==========");
} catch (Exception e) {
e.printStackTrace();
}
}
}
运行结果如下:
============begin===========
=============end==========
Thu Dec 03 20:06:44 CST 2015/这是传到job中的值
Thu Dec 03 20:06:49 CST 2015/这是传到job中的值
Thu Dec 03 20:06:54 CST 2015/这是传到job中的值
Thu Dec 03 20:06:59 CST 2015/这是传到job中的值
Thu Dec 03 20:07:04 CST 2015/这是传到job中的值
Thu Dec 03 20:07:09 CST 2015/这是传到job中的值
Thu Dec 03 20:07:14 CST 2015/这是传到job中的值
Thu Dec 03 20:07:19 CST 2015/这是传到job中的值
Thu Dec 03 20:07:24 CST 2015/这是传到job中的值
Thu Dec 03 20:07:29 CST 2015/这是传到job中的值
Thu Dec 03 20:07:34 CST 2015/这是传到job中的值