最近要做一个项目统计各个系统的订单情况,新项目,使用springboot mybatis druid重新开发,之前已经介绍过【推荐阅读:springboot 集成mybatis和druid】下面在主要的多数据源配置信息
下面是配置数据源的代码,
文件目录 config/Db1DruidDataSourceConfig.java
@Configuration // 扫描 Mapper 接口并容器管理 @MapperScan(basePackages = Db1DruidDataSourceConfig.PACKAGE, sqlSessionFactoryRef = "Db1SqlSessionFactory") public class Db1DruidDataSourceConfig { // 精确到 db1 目录,以便跟其他数据源隔离,@Mapper 目录 static final String PACKAGE = "com.phpsong.bigscreen.dao.Db1"; // 精确到 db1 目录,以便跟其他数据源隔离,mybatis xml目录 static final String MAPPER_LOCATION = "classpath:/mapper/Db1/*.xml"; @Value("${Db1.datasource.url}") private String url; @Value("${Db1.datasource.username}") private String user; @Value("${Db1.datasource.password}") private String password; @Value("${Db1.datasource.driverClassName}") private String driverClass; @Bean(name = "Db1DataSource") public DataSource Db1DataSource() { DruidDataSource dataSource = new DruidDataSource(); dataSource.setDriverClassName(driverClass); dataSource.setUrl(url); dataSource.setUsername(user); dataSource.setPassword(password); return dataSource; } @Bean(name = "Db1TransactionManager") public DataSourceTransactionManager Db1TransactionManager() { return new DataSourceTransactionManager(Db1DataSource()); } @Bean(name = "Db1SqlSessionFactory") public SqlSessionFactory Db1SqlSessionFactory(@Qualifier("Db1DataSource") DataSource Db1DataSource) throws Exception { final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean(); sessionFactory.setDataSource(Db1DataSource); sessionFactory.setMapperLocations(new PathMatchingResourcePatternResolver() .getResources(Db1DruidDataSourceConfig.MAPPER_LOCATION)); return sessionFactory.getObject(); } }
application.properties文件配置数据里
Db1.datasource.url=jdbc:mysql://127.0.0.1:3306/phpsong?autoReconnect=true&failOverReadOnly=false&useUnicode=true&characterEncoding=utf-8&supportBigNumbers=true&allowMultiQueries=true&serverTimezone=UTC Db1.datasource.username=root Db1.datasource.password=123456 Db1.datasource.driverClassName=com.mysql.cj.jdbc.Driver
上面的配置是项目里已经使用了