一:quartz中的基本概念
- StdSchedulerFactory
- Scheduler
- JobDetail
- Job
- JobKey
- Trigger
- TriggerKey
- cron
二:quartz概念讲解
2.1 cron
cron表达式,表示cron的执行周期的一个表述。比如 0/2 * * * * ? 表述2秒钟执行一次。0 0 1 * * * 表示每天凌晨1点执行。
2.2 Job
job是一个接口org.quartz.Job 其中接口内有一个方法是
public void execute(JobExecutionContext context) throws JobExecutionException;
job表述执行单元,在某时间执行动作,执行内容就是该方法。
2.3 JobDetail
org.quartz. JobDetail, quartz控制job的类,是job的一个包裹类。该类会包含job的唯一id(在quartz用jobkey表示),还有job的描述,job的上下文传递参数。
2.4 JobKey
表示job的唯一性,每个job都会对应唯一的一个jobkey,jobkey包含jobname和jobgroup两个字段。
2.5 Trigger
job的意思是执行单元,但是触发执行单元什么时候执行的是trigger。触发器。触发器和执行单元是解耦的。1个job可以对应多个trigger,但是1个trigger只能有1个job。
//给1个job添加多个triggers
void scheduleJob(JobDetail jobDetail, Set<? extends Trigger> triggersForJob, boolean replace)(org.quartz.Scheduler.java)
2.6 TriggerKey
每个trigger都有唯一性,triggerkey有trigger group和trigger name两个字段,