1.maven 坐标
<!-- Quartz 依赖 -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.3.1</version>
</dependency>
</dependencies>
2.需要被定时执行的业务
package com.yang.demo;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import java.util.Date;
public class Demo implements Job {
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
//此处为任务执行。 内写业务逻辑
System.out.println("定时执行的任务:"+new Date().toString());
}
}
3.启用定时调度
package com.yang.demo;
import org.quartz.*;
import org.quartz.impl.StdSchedulerFactory;
public class TestDemo {
public static void main(String[] args) {
try{
//idjm Job对象,把需要做的事情给扔进去
JobDetail job = JobBuilder
.newJob(Demo.class)
.build();
//创建触发器 ,按照 cron 的表达式来给定触发的时间
//cron 表达式可以自行在网上搜索
Trigger trigger = TriggerBuilder
.newTrigger()
.withSchedule
(CronScheduleBuilder
.cronSchedule("4,8 * * * * ? "))
.build();
//创建 Scheduler 定时调度对象 放入触发器,以及Job 即可
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
scheduler.scheduleJob(job,trigger);
//启动
scheduler.start();
}catch(Exception e){
e.printStackTrace();
}
}
}
运行即出结果: