Quartz任务触发流程如下:
创建一个JobDetail对象,该对象包含任务的详细信息,如任务名称、任务组、任务类等。
创建一个Trigger对象,该对象定义了任务触发的条件,如触发时间、重复规则等。
将JobDetail和Trigger对象注册到Scheduler中,Scheduler是Quartz的核心调度器,负责管理和执行任务。
Scheduler在指定的时间点触发任务,即根据Trigger的定义,触发对应的Job执行。
Scheduler将JobDetail对象交给一个可用的工作线程执行。
工作线程执行Job的execute()方法,即执行具体的任务逻辑。
任务执行完成后,Scheduler会根据Trigger的定义,继续触发下一次任务执行,直到满足终止条件。
如果Trigger被暂停或移除,Scheduler将不再触发与之关联的Job。
需要注意的是,Quartz还提供了各种调度选项和功能,如任务间的依赖关系、任务的持久化存储、任务的并发执行等。