SpringBoot2.0整合Quartz省去了很多繁琐的配置,针对新版本的Quartz进行了自动化配置(AutoConfiguration)。
简单的来说,整个过程只需要两步:添加依赖、填写配置
添加依赖
在pom.xml配置文件中添加依赖,只需要依赖 spring-boot-starter-quartz
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
填写配置
在application.yml或application.properties配置文件中添加相应的quartz配置
spring:
#选择数据库方式
jbo-store-type: jdbc
#quartz相关配置,与quartz.properties功能相同
quartz:
properties:
org:
quartz:
scheduler:
instanceName: testScheduler
instanceId: AUTO
jobStore:
class: org.quartz.impl.jdbcjobstore.JobStoreTX
driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
tablePrefix: QRTZ_
isClustered: true
clusterCheckinInterval: 10000
useProperties: false
threadPool:
class: org.quartz.simpl.SimpleThreadPool
threadCount: 10
threadPriority: 5
threadsInheritContextClassLoaderOfInitializingThread: true
到这里Quartz就集成好了,不需要 QuartzConfiguration
配置类,也不需要创建继承自 AdaptableJobFactory
的 MyJobFactory
。如果还要做什么,那就是创建一个 QuartzManager
类,提供对Job的定时管理。
然后就是在数据库里创建quartz相关的表,可以写个Job就可以跑起来了。