第一步:连接池
spring.datasource.data.jdbc-url=****
spring.datasource.data.username=****
spring.datasource.data.password=****
spring.datasource.data.driver-class-name=****
spring.datasource.data.type=****
spring.datasource.data2.jdbc-url=****
spring.datasource.data2.username=****
spring.datasource.data2.password=****
spring.datasource.data2.driver-class-name=****
spring.datasource.data2.type=****
第二部:编写Configuration
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.*;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import javax.sql.DataSource;
@Configuration
@MapperScan(basePackages = {"****.mapper"}, sqlSessionFactoryRef = "dataSqlSessionFactory")
@Profile({"dev", "default"})
public class DataSource3Config {
@Bean(name = "dataDataSource")
@ConfigurationProperties(prefix = "spring.datasource.data")
@Primary
public DataSource dataDataSource() {
return DataSourceBuilder.create().build();
}
@Bean(name = "data3SqlSessionFactory")
@Primary
public SqlSessionFactory data3SqlSessionFactory(@Qualifier("data3DataSource") DataSource dataSource) throws Exception {
SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
bean.setDataSource(dataSource);
return bean.getObject();
}
@Bean(name = "data3TransactionManager")
@Primary
public DataSourceTransactionManager data3TransactionManager(@Qualifier("data3DataSource") DataSource dataSource) {
return new DataSourceTransactionManager(dataSource);
}
@Bean(name = "data3SqlSessionTemplate")
@Primary
public SqlSessionTemplate data3SqlSessionTemplate(@Qualifier("data3SqlSessionFactory") SqlSessionFactory sqlSessionFactory) {
return new SqlSessionTemplate(sqlSessionFactory);
}
}