苞米豆生态圈:
- MybatisX 一款全免费且强大的 IDEA 插件,支持跳转,自动补全生成 SQL,代码生成。
- Mybatis-Mate 为 MyBatis-Plus 企业级模块,支持分库分表、数据审计、字段加密、数据绑定、数据权限、表结构自动生成 SQL 维护等高级特性。
- Dynamic-DataSource 基于 SpringBoot 的多数据源组件,功能强悍,支持 Seata 分布式事务。
配合AOP动态代理非常方便快捷实现动态数据库
// dynamic动态切换数据源
DynamicDataSourceContextHolder.push("yml中配置的dynamic数据源前缀");
DynamicDataSourceContextHolder.poll(); //移除队列,恢复默认master数据源
相关链接,后续再整理笔记:
@Transactional跟@DS动态数据源注解冲突(这个其实笨一点就用上面的动态语句在方法里面切,高效一点就切对应的方法,切入到方法中调用的动态数据的方法)