liusheng
2023-05-25 bed24ea3fdeee959b85b699a82d53c5112adb219
ruoyi-quartz/src/main/java/com/ruoyi/quartz/util/ScheduleUtils.java
@@ -1,15 +1,6 @@
package com.ruoyi.quartz.util;
import org.quartz.CronScheduleBuilder;
import org.quartz.CronTrigger;
import org.quartz.Job;
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.JobKey;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.TriggerBuilder;
import org.quartz.TriggerKey;
import org.quartz.*;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.constant.ScheduleConstants;
import com.ruoyi.common.exception.job.TaskException;
@@ -72,6 +63,12 @@
        // 按新的cronExpression表达式构建一个新的trigger
        CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity(getTriggerKey(jobId, jobGroup))
                .withSchedule(cronScheduleBuilder).build();
        //下面这里可以控制执行次数“withRepeatCount(1),0代码执行一次,1代表执行两次...”,withIntervalInSeconds(10)代表多少秒后执行;这里没有写任务执行完成后,删除任务,后面需要再补上
//        Trigger trigger = TriggerBuilder.newTrigger()
//                .withIdentity(getTriggerKey(jobId, jobGroup))
//                .startNow()
//                .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(10).withRepeatCount(1))
//                .build();
        // 放入参数,运行时的方法可以获取
        jobDetail.getJobDataMap().put(ScheduleConstants.TASK_PROPERTIES, job);
@@ -88,6 +85,7 @@
        {
            // 执行调度任务
            scheduler.scheduleJob(jobDetail, trigger);
            scheduler.deleteJob(jobDetail.getKey());
        }
        // 暂停任务