依赖
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.3.0</version>
</dependency>
job任务
package com.example;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class MyJob implements Job {
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");
System.out.println(sdf.format(date));
}
}
package com.example;
import org.quartz.*;
import org.quartz.impl.StdSchedulerFactory;
import java.text.ParseException;
public class App {
public static void main(String[] args) throws ParseException, SchedulerException {
//String d = "0 8 * * * ?";//每个小时的第8分钟工作一次
// 任务名称
String jobName = "quartz.job.name";
// 任务组
String jobGroup = "quartz.job.group";
// 构建JobDetail
JobDetail jobDetail= JobBuilder.newJob(MyJob.class)
.withIdentity(jobName,jobGroup)
.build();
// 触发名称
String triName = "quartz.job.trigger.name";
// 触发表达式
String triPress = "*/1 * * * * ?";
CronExpression express = new CronExpression(triPress);
// 构建触发器
Trigger trigger= TriggerBuilder.newTrigger()
.withIdentity(triName,jobGroup)
.startNow()
.withSchedule(CronScheduleBuilder.cronSchedule(express))
.build();
// 创建调度器(Scheduler)
SchedulerFactory sf = new StdSchedulerFactory();
Scheduler sched = sf.getScheduler();
// 注册调度器(Scheduler)
sched.scheduleJob(jobDetail,trigger);
// 启动调度器(Scheduler)
sched.start();
}
}