Springboot 2.x 配置注入数据源


@Configuration
@MapperScan(basePackages = {"com.spicel.service"},sqlSessionFactoryRef = "baseSqlSessionFactory")
public class DataSourceConfig {

    /**
     * 注入数据源
     * @return DataSource
     */
    @Bean(name = "baseDataSource")
    @ConfigurationProperties(prefix = "spring.datasource.data")
    public DataSource buildDataSource() {
        return DataSourceBuilder.create().build();
    }


    /**
     * 注入session工厂
     * @param dataSource dataSource
     * @return SqlSessionFactory
     * @throws Exception 异常
     */
    @Bean(name = "baseSqlSessionFactory")
    public SqlSessionFactory buildSqlSessionFactory(@Qualifier("baseDataSource") DataSource dataSource) throws Exception {
        SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource);
        sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("mapper/*.xml"));
        return sessionFactory.getObject();
    }


    /**
     * 注入事务管理器
     * @param dataSource dataSource
     * @return DataSourceTransactionManager
     */
    @Bean(name = "baseTransactionManager")
    public DataSourceTransactionManager buildTransactionManager(@Qualifier("baseDataSource") DataSource dataSource) {
        return new DataSourceTransactionManager(dataSource);
    }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM