1.设置主数据源
@Configuration @MapperScan(basePackages="***.dao.m", sqlSessionFactoryRef="mainSqlSessionFactory") public class DataSourceMainConfig { @Primary //表示这个数据源是默认数据源 @Bean("mainDataSource") //将这个对象放入Spring容器中 @ConfigurationProperties(prefix="spring.datasource.main") //读取配置文件中的参数,并指定参数名的前缀 public DataSource getDataSource() { return DataSourceBuilder.create().build(); } @Primary @Bean("mainSqlSessionFactory") public SqlSessionFactory mainSqlSessionFactory(@Qualifier("mainDataSource") DataSource datasource) throws Exception { SqlSessionFactoryBean bean = new SqlSessionFactoryBean(); bean.setDataSource(datasource); bean.setMapperLocations( new PathMatchingResourcePatternResolver().getResources("classpath:***/mapper/m/*.xml")); //xml位置 return bean.getObject(); } @Primary @Bean("mainSqlSessionTemplate") public SqlSessionTemplate mainSqlSessionTemplate(@Qualifier("mainSqlSessionFactory") SqlSessionFactory sessionfactory) { return new SqlSessionTemplate(sessionfactory); } }2.设置第二个数据源
@Configuration @MapperScan(basePackages="***.dao.s", sqlSessionFactoryRef="secondSqlSessionFactory") public class DataSourceVocConfig { @Bean("secondDataSource") //将这个对象放入Spring容器中 @ConfigurationProperties(prefix="spring.datasource.second") //读取配置文件中的参数,并指定参数名的前缀 public DataSource getDataSource() { return DataSourceBuilder.create().build(); } @Bean("secondSqlSessionFactory") public SqlSessionFactory vocSqlSessionFactory(@Qualifier("secondDataSource") DataSource datasource) throws Exception { SqlSessionFactoryBean bean = new SqlSessionFactoryBean(); bean.setDataSource(datasource); bean.setMapperLocations( new PathMatchingResourcePatternResolver().getResources("classpath:***/mapper/s/*.xml")); //xml位置 return bean.getObject(); } @Bean("secondSqlSessionTemplate") public SqlSessionTemplate vocSqlSessionTemplate(@Qualifier("secondSqlSessionFactory") SqlSessionFactory sessionfactory) { return new SqlSessionTemplate(sessionfactory); } }