import org.quartz.impl.StdSchedulerFactory;
import java.text.ParseException;
import java.util.Date;
public class Test {
public static void main(String [] args) throws ParseException, SchedulerException, InterruptedException {
//定时任务表达式字符串 每秒执行一次
String quarz_exprees = "1-59 * * * * ?";
//创建一个触发器
/**
* public CronTrigger(String name, String group, String jobName,
* String jobGroup, Date startTime, Date endTime, String cronExpression)
*/
String name = "mask";
String group = "maskGroup";
String jobName = "maskFile";
String jobGroup = "maskFileGroup";
//开始时间设置为当前系统时间
Date startTime = new Date();
//结束时间设置为当前系统时间+1分钟
Date endTime = new Date(startTime.getTime()+60000L);
CronTrigger cronTrigger =
new CronTrigger(name,group,jobName,jobGroup,startTime,endTime,quarz_exprees);
//创建一个要工作的对象
JobDetail job = new JobDetail(jobName,jobGroup,MyJob.class);
JobDataMap jobDataMap = new JobDataMap();
jobDataMap.put("count",0);
job.setJobDataMap(jobDataMap);
//创建任务调度对象
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
scheduler.scheduleJob(job,cronTrigger);
//启动调度
scheduler.start();
Thread.sleep(70000L);
//关闭调度
scheduler.shutdown();
}
}
package src.main.webapp.java.controller;
import org.quartz.*;
public class MyJob implements Job {
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
JobDetail jobDetail = context.getJobDetail();
JobDataMap jobDataMap =jobDetail.getJobDataMap();
int count = (int) jobDataMap.get("count");
count++;
System.out.println( count + jobDetail.getGroup());
}
}
pom.xml
<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.8.5</version>
</dependency>