开发了一个用于数据库同步的工具,其内部使用了 Mybatis-flex 框架连接 MySQL 数据源。
工作项目使用该工具时,也使用 Mybatis-flex 框架,但需要连接其他数据源。此时便有多数据源的需求(工具、项目各配置其数据源)。
查阅官方文档发现,SpringBoot 项目可以通过 yml 配置多数据源,但工具类自定义了属性,通过编码方式创建数据源,因此决定同样通过编码配置多数据源。
java
HikariDataSource source = new HikariDataSource();
MigConfig.DatasourceConf dsConf = config.getDatasource();
source.setJdbcUrl(dsConf.url());
source.setUsername(dsConf.username());
source.setPassword(dsConf.password());
source.setDriverClassName(dsConf.driverClassName());
MybatisFlexBootstrap.getInstance()
.addDataSource(config.getDatasourceKey(), source);