Quartz 任务调度器设置
从 Jmix v1.2 开始,推荐使用 Quartz 扩展组件 集成 Quartz 任务调度。 如果没使用 Quartz 组件,请参考下面的方法。 |
框架中多处用到了 Quartz 任务调度器 运行计划任务。本章节介绍如何在项目中引入 Quartz 并为不同的数据库设置作业存储。
-
在
build.gradle
文件添加下列依赖:implementation 'org.springframework.boot:spring-boot-starter-quartz'
-
在
application.properties
文件添加下列属性:main.datasource.studio.liquibase.excludePrefixes = qrtz_ spring.quartz.job-store-type = jdbc
-
如果使用 PostgreSQL,添加下列属性:
spring.quartz.properties.org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
-
如果使用 Microsoft SQL Server,添加下列属性:
spring.quartz.properties.org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.MSSQLDelegate
-
如果使用 HSQL、PostgreSQL、MySQL 或 Oracle 数据库,可以依赖应用程序启动时自动创建 Quartz 表格。仅需添加下列属性:
spring.quartz.jdbc.initialize-schema = always
-
如果使用 Microsoft SQL Server,需要手动创建数据库结构,因为 Spring Boot 无法自动执行 Quartz 提供的脚本。按照下列步骤:
-
添加了 Quartz 依赖并重新加载 Gradle 项目之后,在 Quartz JAR 中找到
tables_sqlServer.sql
文件。可以在 IDEA 中点击两次 Shift 键(Navigate → Search Everything),然后输入文件名。 -
使用数据库的 SQL 客户端运行
tables_sqlServer.sql
文件中的内容。注意,需要将第一个USE
指令中的enter_db_name_here
占位符替换为你的数据库名称。 -
在应用程序中添加下列属性:
spring.quartz.jdbc.initialize-schema = never
-
本页是否有帮助?
感谢您的反馈