quartz所需jar
quartz 核心概念
Quartz对任务调度进行了高度抽象,提出了3个核心概念,并在org.quartz包中通过接口和类进行了描述
任务:就是执行的工作内容。Quartz提供Job接口来支持任务定义,Job接口中只有一个execute()方法,开发者需要在自己的任务类中实现该方法。
触发器:定义触发Job执行的时间的触发规则。Quartz提供Trigger类及其子类支持触发器功能。
调度器:Quartz提供了Scheduler接口,它是Quartz独立运行的容器。将工作任务和触发器注册到调度器中,保证任务可以在正确的时间执行。
quartz 常用接口
使用quartz 要实现job接口
public class JobDemo1 implements Job{
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
System.out.println("Hello Job!");
}
}
public static void main(String[] args) throws SchedulerException, ParseException {
//创建任务实例
JobDetail job=JobBuilder.newJob(Test.class)
.withIdentity("jobDemo","group2")
//传值
.usingJobData("name", "张三")
.build();
String a="0/3 31/35 21 * * ?";
//创建触发器
Trigger trigger=TriggerBuilder.newTrigger()
.withIdentity("triggerDemo", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule(a))
.forJob(job)
.build();
//创建调度器
Scheduler scheduler=new StdSchedulerFactory().getScheduler();
scheduler.scheduleJob(job,trigger);
scheduler.start();
}
cron表达式