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定时任务(持久化到数据库)

Springboot定时任务quartz整合(多数据源+quartz持久化到数据库)

springboot-01整合quartz