更新内容:
修复springboot2.0以上版本不能默认设置HikariDataSource,type为空抛异常。(原因是sb2.0更改了父类的代码的位置,为兼容springboot2.0采用反射实现,后期优化)
底层代码整理。
Druid数据源初始大小改为3。
后期计划:
支持spel表达式。
与Mp的集成。(继承下来的方法按设计是不能切换数据源的,因为没有注解。因需求较多,尝试集成一下。)
支持自定义解析。
项目地址: https://gitee.com/baomidou/dynamic-datasource-spring-boot-starter
一个基于springboot的快速集成多数据源的启动器
简介
dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器。
其支持 Jdk 1.7+, SpringBoot 1.4.x 1.5.x 2.0.x。
从 2.0.0 开始它适用于多种场景,常见的场景如下。
纯粹多库,各个库甚至可以是不同的数据库。
读写分离,一主多从,多主多从。
混合模式,既有主从也有单库。
本框架只做 切换数据源 这件核心的事情,并不限制您的具体操作。
强烈建议在 主从模式 下遵循普遍的规则,以便他人能更轻易理解您的代码。
主数据库 建议 只执行 INSERT
UPDATE
DELETE
操作。
从数据库 建议 只执行 SELECT
操作。
另外如果您的项目比较复杂,强烈建议您使用 sharding-jdbc 。