Mybatis-Flex 自定义多数据源时踩的坑

发布于 2026-03-23 12:13
更新于 2026-03-23 13:41
4 浏览

因不同项目有不同数据源需求,所以需要配置多数据源,而多数据源之间相互影响。故研究解决方案时踩了很多坑。

开发了一个用于数据库同步的工具,其内部使用了 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);

评论

登录后可以发表评论和管理评论
暂无评论,快来抢沙发吧~