第一点:
CRON triggers
-
CronTrigger trigger = TriggerBuilder.newTrigger() -
.withIdentity(name, TRIGGER_GROUP) -
.withSchedule( -
CronScheduleBuilder.cronSchedule(time) -
.withMisfireHandlingInstructionDoNothing()) -
.build();// 触发器名,触发器组,触发器时间设定
withMisfireHandlingInstructionDoNothing(所有的misfire不管,执行下一个周期的任务)
在quartz.properties配置文件中添加:
#这个时间大于10000(10秒)会导致MISFIRE_INSTRUCTION_DO_NOTHING不起作用。
org.quartz.jobStore.misfireThreshold = 1000
第二点:
配置文件中添加:jobStore
org.quartz.scheduler.instanceName = DatartScheduleCluster org.quartz.threadPool.threadCount = 10 org.quartz.threadPool.threadPriority = 5 org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate org.quartz.jobStore.tablePrefix = QRTZ_ org.quartz.jobStore.dataSource = myDS org.quartz.jobStore.useProperties = true org.quartz.jobStore.misfireThreshold = 1000 org.quartz.jobStore.isClustered = true org.quartz.jobStore.clusterCheckinInterval = 5000 org.quartz.dataSource.myDS.driver = com.mysql.jdbc.Driver org.quartz.dataSource.myDS.URL = jdbc:mysql://172.29.60.145:3306:3306/datart?characterEncoding=utf-8&useSSL=false # mysql8.0+ÒÔÉϰ汾ÅäÖà # org.quartz.dataSource.myDS.URL=jdbc:mysql://localhost:3306/quartz?characterEncoding=utf-8&useSSL=false&serverTimezone = GMT org.quartz.dataSource.myDS.user = root org.quartz.dataSource.myDS.password = 123456 org.quartz.dataSource.myDS.maxConnections = 5 //这个一定要加 spring.quartz.job-store-type= jdbc
第三个pom中添加依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.29</version>
</dependency>









