Quartz任务调度
任务调度即在某个时间点做某个事情
什么是Quartz?
Quartz框架核心概念
Quartz提出了3个核心概念
任务:就是执行的工作内容。Quartz提供Job接口来支持任务定义,Job接口中只有一个execute()方法,开发者需要在自己的任务类中实现该方法。
触发器:定义触发Job执行的时间的触发规则。Quartz 提供Trigger类及其子类支持触发器功能。
调度器:Quartz提供了Scheduler接口,它是Quartz独立运行的容器。将工作任务和触发器注册到调度器中,保证任务可以在正确的时间执行。
Quartz框架的使用流程
实现步骤
▲添加所需的jar文件
▲定义一个Quartz任务
//Job(执行任务调度的组件要实现的接口。)
public class JobDemo1 implements Job{
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
System.out.println("Hello Job!");
}
}
▲创建一个任务实例(JobDetail)
//JobDetail用来定义Job的实例,JobBuilder用来定义或创建JobDetail的实例
//JobDetail job = JobBuilder.newJob(JobDemo1.class).withIdentity("jobDemo1", "group1").build();
JobDetail job = JobBuilder.newJob(JobDemo2.class)
.withIdentity("jobDemo1", "group1")
.usingJobData("name", "Hello world!")
.usingJobData("age", 20).build();
▲创建一个触发器(Trigger)
//Trigger定义一个Job何时被执行的组件,也称触发器。
//TriggerBuilder用来创建Tigger的实例(设置每5秒执行一次)
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity("triggerDemo","group1")