org.quartz.jobStore.class:org.quartz.impl.jdbcjobstore.JobStoreTX
时间: 2023-07-17 20:05:48 浏览: 174
'org.quartz.jobStore.class'属性设置为'org.quartz.impl.jdbcjobstore.JobStoreTX',表示Quartz将使用JDBC作业存储实现来管理作业和调度信息。JobStoreTX是一个基于数据库事务的作业存储实现,它使用JDBC连接来存储和检索作业相关的信息。这种作业存储实现适合在具有事务支持的数据库中进行作业管理。
相关问题
@Configuration public class ScheduleConfig { @Bean public SchedulerFactoryBean schedulerFactoryBean(DataSource dataSource) { SchedulerFactoryBean factory = new SchedulerFactoryBean(); factory.setDataSource(dataSource); // quartz参数 Properties prop = new Properties(); prop.put("org.quartz.scheduler.instanceName", "RuoyiScheduler"); prop.put("org.quartz.scheduler.instanceId", "AUTO"); // 线程池配置 prop.put("org.quartz.threadPool.class", "org.quartz.simpl.SimpleThreadPool"); prop.put("org.quartz.threadPool.threadCount", "20"); prop.put("org.quartz.threadPool.threadPriority", "5"); // JobStore配置 prop.put("org.quartz.jobStore.class", "org.quartz.impl.jdbcjobstore.JobStoreTX"); // 集群配置 prop.put("org.quartz.jobStore.isClustered", "true"); prop.put("org.quartz.jobStore.clusterCheckinInterval", "15000"); prop.put("org.quartz.jobStore.maxMisfiresToHandleAtATime", "1"); prop.put("org.quartz.jobStore.txIsolationLevelSerializable", "true"); // sqlserver 启用 // prop.put("org.quartz.jobStore.selectWithLockSQL", "SELECT * FROM {0}LOCKS UPDLOCK WHERE LOCK_NAME = ?"); prop.put("org.quartz.jobStore.misfireThreshold", "12000"); prop.put("org.quartz.jobStore.tablePrefix", "QRTZ_"); factory.setQuartzProperties(prop); factory.setSchedulerName("RuoyiScheduler"); // 延时启动 factory.setStartupDelay(1); factory.setApplicationContextSchedulerContextKey("applicationContextKey"); // 可选,QuartzScheduler // 启动时更新己存在的Job,这样就不用每次修改targetObject后删除qrtz_job_details表对应记录了 factory.setOverwriteExistingJobs(true); // 设置自动启动,默认为true factory.setAutoStartup(true); return factory; } } 什么意思
这段代码是一个配置类,用于配置 Quartz 调度器的相关参数和属性。具体来说,它创建了一个 SchedulerFactoryBean 的 bean,并通过该 bean 配置了 Quartz 的各种参数。
在这段代码中,主要配置了以下内容:
1. 数据源(dataSource):设置调度器使用的数据源。
2. Quartz 参数(prop):配置调度器的一些基本属性,如实例名称(instanceName)、实例ID(instanceId)、线程池配置等。
3. JobStore 配置:使用数据库存储调度信息的配置,指定了使用的 JobStore 类和表名前缀。
4. 集群配置:启用集群模式,并设置集群检查间隔和最大错误处理数。
5. 延时启动和自动启动:设置调度器的延时启动时间和自动启动属性。
6. 其他配置:设置调度器的名称、应用程序上下文关键字等。
最后,将配置好的 SchedulerFactoryBean 返回。这样,在应用程序中就可以使用该 bean 获取 Quartz 调度器,并进行相关操作。
SpringBoot quartz.properties怎么写
在 Spring Boot 中,可以在 `application.properties` 或 `application.yml` 中配置 Quartz 的属性,也可以通过在类路径下创建 `quartz.properties` 文件来配置。
以下是 `quartz.properties` 文件的示例:
```
# Quartz properties
org.quartz.scheduler.instanceName = MyScheduler
org.quartz.scheduler.instanceId = AUTO
org.quartz.scheduler.skipUpdateCheck = true
org.quartz.scheduler.jobFactory.class = org.quartz.simpl.SimpleJobFactory
# ThreadPool
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 10
org.quartz.threadPool.threadPriority = 5
# JobStore
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.jobStore.useProperties = false
org.quartz.jobStore.dataSource = myDS
org.quartz.jobStore.tablePrefix = QRTZ_
org.quartz.jobStore.isClustered = false
# DataSource
org.quartz.dataSource.myDS.driver = com.mysql.jdbc.Driver
org.quartz.dataSource.myDS.URL = jdbc:mysql://localhost:3306/quartz
org.quartz.dataSource.myDS.user = root
org.quartz.dataSource.myDS.password = root
org.quartz.dataSource.myDS.maxConnections = 5
```
在这个示例中,我们配置了 Quartz 的实例名称、线程池、JobStore 和数据源等属性。你可以根据自己的需求修改配置。
阅读全文