SpringBoot整合Quartz定时任务(持久化到数据库)
Posted zhenghuasheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot整合Quartz定时任务(持久化到数据库)相关的知识,希望对你有一定的参考价值。
1,添加maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
2,配置文件增加配置
spring:
quartz:
data-source:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/db_quartz?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true
username: root
password: 123456
job-store-type: JDBC
jdbc:
initialize-schema: ALWAYS
properties:
org:
quartz:
overwrite-existing-jobs: true
scheduler:
instanceName: clusteredScheduler
instanceId: AUTO
jobStore:
class: org.quartz.impl.jdbcjobstore.JobStoreTX
driverDelegateClass: org.quartz.impl.jdbcjobstore.StdJDBCDelegate
tablePrefix: QRTZ_
isClustered: false
clusterCheckinInterval: 10000
useProperties: false
threadPool:
class: org.quartz.simpl.SimpleThreadPool
threadCount: 10
threadPriority: 5
threadsInheritContextClassLoaderOfInitializingThread: true
3,新增dataSource配置(因项目中的业务数据源已经配置了dataSource,为了单独区分数据库,配置成单独的数据源),查看了springboot官网后发现:
在原有dataSource配置类中新增配置:
private static final String quartz_datasource_prefix = "spring.quartz.data-source";
/**
* @QuartzDataSource 注解则是配置Quartz独立数据源的配置
*/
@Bean
@QuartzDataSource
@ConfigurationProperties(prefix = quartz_datasource_prefix)
public DataSource quartzDataSource()
return new DruidDataSource();
4,创建数据库db_quartz
5,启动应用,会自动初始化sql脚本
以上是关于SpringBoot整合Quartz定时任务(持久化到数据库)的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot整合Quartz实现动态的创建或删除定时任务并将定时调度任务持久化到MySQL以及Quartz集群配置
SpringBoot整合Quartz实现动态的创建或删除定时任务并将定时调度任务持久化到MySQL以及Quartz集群配置
SpringBoot整合Quartz定时任务(持久化到数据库)
SpringBoot整合Quartz定时任务(持久化到数据库)