共计 4031 个字符,预计需要花费 11 分钟才能阅读完成。
1 写配数据库置类 1
dbConfig.DataSourceConfigCommon
package XXX.api.dbConfig;
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.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
// 表示这个类为一个配置类
@Configuration
// 配置 mybatis 的接口类放的地方
@MapperScan(basePackages = "XXX.api.mapper.common", sqlSessionFactoryRef = "commonSqlSessionFactory")
public class DataSourceConfigCommon {
// 将这个对象放入 Spring 容器中
@Bean(name = "commonDataSource")
// 表示这个数据源是默认数据源
// @Primary
// 读取 application.properties 中的配置参数映射成为一个对象
// prefix 表示参数的前缀
@ConfigurationProperties(prefix = "spring.datasource.common")
public DataSource getDateSourceCommon() {return DataSourceBuilder.create().build();}
@Bean(name = "commonSqlSessionFactory")
// 表示这个数据源是默认数据源
// @Primary
// @Qualifier 表示查找 Spring 容器中名字为 test1DataSource 的对象
public SqlSessionFactory commonSqlSessionFactory(@Qualifier("commonDataSource") DataSource datasource)
throws Exception {SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
bean.setDataSource(datasource);
bean.setMapperLocations(
// 设置 mybatis 的 xml 所在位置
new PathMatchingResourcePatternResolver().getResources("classpath:cn/longmaster/slss/api/mapper/xml/*.xml"));
return bean.getObject();}
@Bean("commonSqlSessionTemplate")
// 表示这个数据源是默认数据源
// @Primary
public SqlSessionTemplate commonSqlSessionTemplate(@Qualifier("commonSqlSessionFactory") SqlSessionFactory sessionFactory) {return new SqlSessionTemplate(sessionFactory);
}
}
2 写配数据库置类 2
dbConfig.DataSourceConfigYLSBGL
package XXX.api.dbConfig;
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.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
// 表示这个类为一个配置类
@Configuration
// 配置 mybatis 的接口类放的地方
@MapperScan(basePackages = "XXX.api.mapper.ylsbgl", sqlSessionFactoryRef = "ylsbglSqlSessionFactory")
public class DataSourceConfigYLSBGL {
// 将这个对象放入 Spring 容器中
@Bean(name = "ylsbglDataSource")
// 表示这个数据源是默认数据源
// @Primary
// 读取 application.properties 中的配置参数映射成为一个对象
// prefix 表示参数的前缀
@ConfigurationProperties(prefix = "spring.datasource.ylsbgl")
public DataSource getDateSourceYlsbgl() {return DataSourceBuilder.create().build();}
@Bean(name = "ylsbglSqlSessionFactory")
// 表示这个数据源是默认数据源
// @Primary
// @Qualifier 表示查找 Spring 容器中名字为 test1DataSource 的对象
public SqlSessionFactory ylsbglSqlSessionFactory(@Qualifier("ylsbglDataSource") DataSource datasource)
throws Exception {SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
bean.setDataSource(datasource);
bean.setMapperLocations(
// 设置 mybatis 的 xml 所在位置
new PathMatchingResourcePatternResolver().getResources("classpath:cn/longmaster/slss/api/mapper/xml/*.xml"));
return bean.getObject();}
@Bean("ylsbglSqlSessionTemplate")
// 表示这个数据源是默认数据源
// @Primary
public SqlSessionTemplate ylsbglSqlSessionTemplate(@Qualifier("ylsbglSqlSessionFactory") SqlSessionFactory sessionFactory) {return new SqlSessionTemplate(sessionFactory);
}
}
3 配置文件配置
spring:
datasource:
common:
name: common
jdbc-url: jdbc:mysql://*.*.*.*:3306/db_XXX?useUnicode=true&&characterEncoding=utf-8 #注意设置编码格式 #url
username: XXX #用户名
password: *** #密码
driver-class-name: com.mysql.cj.jdbc.Driver #数据库链接驱动
ylsbgl:
driver-class-name: oracle.jdbc.driver.OracleDriver
name: ylsbgl
jdbc-url: jdbc:oracle:thin:@**.*.*.*:1521/ORCL #url
username: XXX #用户名
password: *** #密码
4 在 XXX.api.mapper.ylsbgl 和 XXX.api.mapper.common 下写对应的 Mapper 即可
正文完
发表至: springboot
2020-05-28