123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package com.tzld.piaoquan.longarticle.config;
- import com.alibaba.druid.pool.DruidDataSource;
- import org.apache.ibatis.session.SqlSessionFactory;
- import org.mybatis.spring.SqlSessionFactoryBean;
- import org.mybatis.spring.annotation.MapperScan;
- import org.springframework.beans.factory.annotation.Qualifier;
- import org.springframework.boot.context.properties.ConfigurationProperties;
- import org.springframework.context.annotation.Bean;
- import org.springframework.context.annotation.Configuration;
- import org.springframework.context.annotation.Primary;
- import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
- import org.springframework.jdbc.datasource.DataSourceTransactionManager;
- import org.springframework.transaction.PlatformTransactionManager;
- import javax.sql.DataSource;
- @Configuration
- @MapperScan(basePackages = DataSourceConfig.PACKAGE_MASTER, sqlSessionFactoryRef = "masterSqlSessionFactory")
- public class DataSourceConfig {
- // 数据源
- static final String PACKAGE_MASTER = "com.tzld.piaoquan.longarticle.dao.mapper.longarticle";
- static final String MAPPER_LOCATION_MASTER = "classpath:mapper/longarticle/*.xml";
- @Bean(name = "dataSource")
- @ConfigurationProperties("spring.datasource")
- public DataSource getDataSource(){
- return new DruidDataSource();
- }
- @Primary
- @Bean(name = "masterTransactionManager")
- public PlatformTransactionManager masterTransactionManager(@Qualifier("dataSource") DataSource dataSource) {
- return new DataSourceTransactionManager(dataSource);
- }
- @Primary
- @Bean(name = "masterSqlSessionFactory")
- public SqlSessionFactory masterSqlSessionFactory(@Qualifier("dataSource") DataSource dataSource) throws Exception {
- final SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
- sessionFactoryBean.setDataSource(dataSource);
- sessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(DataSourceConfig.MAPPER_LOCATION_MASTER));
- return sessionFactoryBean.getObject();
- }
- }
|