39. Quartz调度器
Spring Boot包含有spring-boot-starter-quartz
Starter,方便了使用Quartz调度器。如果Quartz可用,调度器会被自动配置(通过SchedulerFactoryBean抽象)。
以下类型的bean会被自动捡起并关联到调度器:
JobDetail
:定义一个特别的Job。JobDetail
实例能够容易地用JobBuilder
API创建Calendar
Trigger
:定义何时一个特别的Job被触发
默认的,一个内存中JobStore
会被使用。但是,配置一个基于JDBC的store是可能的。如果在你的应用中DataSource
bean可用,而且spring.quartz.job-store-type
属性如下配置:
当jdbc store被使用,模式能够在启动时被初始化:
注 数据库会默认被检查,而且会被初始化(使用由Quartz库提供的标准脚本)。也可以使用spring.quartz.jdbc.schema
属性提供一个自定义脚本。
Quartz调度器的配置能够使用Quartz配置属性(查看spring.quartz.properties.*
),和SchedulerFactoryBeanCustomizer
bean(允许程序化的SchedulerFactoryBean
配置)来自定义 。
Job能够定义setter来注入数据映射属性。普通的bean也能够用相似的行为来注入:
最后更新于