1.main方法测试定时器步骤
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.SimpleScheduleBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.quartz.TriggerKey;
import org.quartz.impl.StdSchedulerFactory;
//定时器的使用:
public class Test {
public static void main(String[] args) {
// org.quartz.SchedulerFactory//org.quartz.impl.StdSchedulerFactory.StdSchedulerFactory()
SchedulerFactory schedulerfactory=new StdSchedulerFactory();
//org.quartz.Scheduler
Scheduler scheduler=null;
try{
// 1.获取调度实例;【调度站指挥员】
scheduler=schedulerfactory.getScheduler();
// 2.创建jobDetail实例,绑定Job实现类【具体干活的人,公交车司机】org.quartz.Scheduler
JobDetail job = JobBuilder.newJob(MyJob.class)//定义Myjob这个类实现job接口;org.quartz.Scheduler
.withIdentity(“myJob”)
.build();
//3.定义调度触发规则 每隔2秒执行一次【触发器设置】【相当于调度站的调度列表,如每个15分钟发一趟车】org.quartz.Scheduler
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity(TriggerKey.triggerKey("myTrigger", "myTriggerGroup"))
.withSchedule(SimpleScheduleBuilder.simpleSchedule()
.withIntervalInMilliseconds(2000)
.repeatForever())
.startNow()
.build();
//4.把作业【任务具体干啥活】和触发器注册到任务调度中【那个司机(job),在几点几分开车走(trigger)】
scheduler.scheduleJob(job, trigger);
// 5. 启动调度 【调度站指挥员发布开始发车命令】
scheduler.start();
}catch(Exception e){
e.printStackTrace();
}
}
/**
* 下面办法属于过时的处理方法;上面的处理办法
*/
// 通过SchedulerFactory获得一个调度器
// SchedulerFactory schedulerfactory = new StdSchedulerFactory();
// Scheduler scheduler = null;
// try {
// // 获取调度器实例
// scheduler = schedulerfactory.getScheduler();
// // 指明job的名称,所在组的名称,以及绑定job类 创建jobDetail实例,绑定Job实现类
// JobDetailImpl jobDetail = new JobDetailImpl(“job1”, “jgroup1”, MyJob.class);
// // 定义调度触发规则 每隔2秒执行一次
// CronTriggerImpl cornTrigger = new CronTriggerImpl(“jobname”, “jobgroup”);
//
// // 括号里面的号依此为秒,分,时,天,周,月,年
// // 里面有具体的使用规则,非常灵活
// cornTrigger.setCronExpression("0/2 * * * * ? ");
// // 把作业和触发器注册到任务调度中
// scheduler.scheduleJob(jobDetail, cornTrigger);
// // 启动调度
//
// scheduler.start();
// } catch (Exception e) {
// e.printStackTrace();
// }
// }
}
///*
// quartz定时器测试
//*
//* @author leizhimin 2009-7-23 8:49:01
//* 定义了一个实现Job接口的类,这个类仅仅表明该job需要完成什么类型的任务【工作,要干的活】,
//* 除此之外,Quartz还需要知道该Job实例所包含的属性;这将由JobDetail类【JobDetail是接口】来完成。
//* JobDetail实例是通过JobBuilder类创建的,导入该类下的所有静态方法
//*/
//public class MyJob implements Job { //org.quartz.Job
// public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
// System.out.println(new Date() + “: doing something…”);
// }
//}
如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。