<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.3.2</version> </dependency> ------------------------ <bean name="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="dataSource" ref="dataSourceXXX" /> <property name="configLocation" value="classpath:quartz.properties" /> <property name="autoStartup" value="true" /><!-- 开发时可以改成false --> </bean>
quartz.properties里: --------- org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate org.quartz.jobStore.dataSource = dataSourceXXX ============================================== 莫名其妙,搜了一下,结果如下: ============================================== 之前版本:当配置dataSource后,即使配置文件中已经指定了JobStoreTX,实际还是使用LocalDataSourceJobStore。 LocalDataSourceJobStore使用已经配置的dataSource作为数据源。
升级后的版本:配置文件中指定org.quartz.jobStore.class后,会使用指定的JobStore。该JobStore对应的dataSource需要专门配置。
作者:剑过不留名 链接:https://juejin.cn/post/7078138768997220366 来源:稀土掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
修改方法: spring.quartz.properties.org.quartz.jobStore.class=org.springframework.scheduling.quartz.LocalDataSourceJobStore
|