概述
quartz通过Job,JobDetail,Trigger,Scheduler来调度一个任务。
Job:代表一个任务,具体的类要实现这个接口,这个接口只有一个方法void execute(JobExecutionContext context)
**JobDetail:**JobDetail表示一个具体的可执行的调度程序,Job是这个可执行程调度程序所要执行的内容,另外JobDetail还包含了这个任务调度的方案和策略。
Trigger:代表一个调度参数的配置,什么时候去调。
Scheduler:代表一个调度容器,一个调度容器中可以注册多个JobDetail和Trigger。当Trigger与JobDetail组合,就可以被Scheduler容器调度了。
job和jobdetail一般是联合使用,作为一个任务,要执行这个任务,还需要trigger调度器。需要把任务和调度器都注册到Scheduler容器里面。
quartz有两种调度方式,分为简单型的和表达式型的
maven导包
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
简单型的使用
定义一个任务MyJob.java
实现Job接口
import java.text.SimpleDateFormat;
import java.util.Date;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
/**
* 定义下一分钟执行的任务
* @author la pomme de terre
*
*/
public class Myjob implements Job{
@Override