title: Quartz技术(一)-Quartz简介和简单实现
categories:
- 后端
tags: - 定时任务
本文将主要介绍Quartz的相关技术,全文都将基于Springboot做代码实现。
Quartz简介
Quartz是一个开源的作业调度框架,可以让计划的程序任务一个预定义的日期和时间运行。Quartz可以用来创建简单或复杂的日程安排执行几十,几百,甚至是十万的作业数。
Quartz核心概念
Quartz API
- Scheduler - 与调度程序交互的主要API(即:调度器)。
- Job - 由希望由调度程序执行的组件实现的接口(即:需要被调度执行的任务)。
- JobDetail - 用于定义作业的实例(即:具体需要被调度任务的封装对象)。
- Trigger(即触发器) - 定义执行给定作业的计划的组件。
- JobBuilder - 用于定义/构建JobDetail实例,用于定义作业的实例。
- TriggerBuilder - 用于定义/构建触发器实例。
Quartz生命周期
Scheduler的生命期,从SchedulerFactory创建它时开始,到Scheduler调用shutdown()方法时结束;Scheduler被创建后,可以增加、删除和列举Job和Trigger,以及执行其它与调度相关的操作(如暂停Trigger)。但是,Scheduler只有在调用start()方法后,才会真正地触发trigger(即执行job)
Quartz简单实例
POM依赖
<!--Quartz依赖-->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.3.0</version>