
com.centit.framework.jdbc.config.JdbcConfig Maven / Gradle / Ivy
package com.centit.framework.jdbc.config;
import com.centit.framework.core.config.DataSourceConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.DependsOn;
import org.springframework.context.annotation.Lazy;
import org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import javax.sql.DataSource;
@EnableTransactionManagement(proxyTargetClass = true)//启用注解事物管理
@Lazy
public class JdbcConfig extends DataSourceConfig {
@SuppressWarnings("SpringJavaAutowiringInspection")
@Bean
@DependsOn("flyway")
public DataSourceTransactionManager transactionManager(@Autowired DataSource dataSource) {
DataSourceTransactionManager transactionManager = new DataSourceTransactionManager();
transactionManager.setDataSource(dataSource);
return transactionManager;
}
@Bean
public PersistenceExceptionTranslationPostProcessor persistenceExceptionTranslationPostProcessor() {
return new PersistenceExceptionTranslationPostProcessor();
}
@Bean
public AutowiredAnnotationBeanPostProcessor autowiredAnnotationBeanPostProcessor() {
return new AutowiredAnnotationBeanPostProcessor();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy