码迷,mamicode.com
首页 > 编程语言 > 详细

springquartz的LocalDataSourceJobStore

时间:2014-12-25 00:12:51      阅读:1184      评论:0      收藏:0      [点我收藏+]

标签:

spring 为quartz 提供了一个 继承 JobStoreCMT的 LocalDataSourceJobStore,主要是为了和spring更好的集成。

public class LocalDataSourceJobStore extends JobStoreCMT {

	/**
	 * Name used for the transactional ConnectionProvider for Quartz.
	 * This provider will delegate to the local Spring-managed DataSource.
	 * @see org.quartz.utils.DBConnectionManager#addConnectionProvider
	 * @see SchedulerFactoryBean#setDataSource
	 */
	public static final String TX_DATA_SOURCE_PREFIX = "springTxDataSource.";
 
这里有一个非常关键地方
setDontSetAutoCommitFalse(true);
//表明是将connection自动提交打开。
// Register transactional ConnectionProvider for Quartz.
DBConnectionManager.getInstance().addConnectionProvider(
	TX_DATA_SOURCE_PREFIX + getInstanceName(),
	new ConnectionProvider() {
	   public Connection getConnection() throws SQLException {
		// Return a transactional Connection, if any.
		return DataSourceUtils.doGetConnection(dataSource);
	}
	public void shutdown() {
	// Do nothing - a Spring-managed DataSource has its own lifecycle.
	}
    }
);
 
如何使用:
如果你在spring的配置文件中使用SchedulerFactoryBean配置了datasoucrce,即使用spring托管的datasource,则spring会强制使用这个jobstore、LocalDataSourceJobStore

springquartz的LocalDataSourceJobStore

标签:

原文地址:http://www.cnblogs.com/beiyeren/p/4183631.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!