Spring Boot多数据源配置
Spring Boot 的多数据源配置算是老生常谈了,但用起来还是挺有坑的。这份spring boot 多数据源.rar
源码包就比较实用,结构清晰,细节也蛮到位的,挺适合用来参考或者直接开搞项目。
多数据源的配置挺关键的,像primaryDataSource
、secondaryDataSource
这种你肯定不陌生。源码里用@ConfigurationProperties
把配置和属性文件对应起来,还用@Bean
注解把每个数据源都单独注册,写得蛮规范的。
切换数据源这块,源码用的是 AOP 方式。写了个切面类,通过注解或者业务逻辑判断选哪个数据源,灵活度比较高。用ThreadLocal
做线程隔离这一招也有用到,保证一个求里不会乱串。
事务管理上稍微绕点。Spring 默认的@Transactional
只管一个数据源,多数据源就得自定义事务管理器。源码里是基于AbstractRoutingDataSource
搞了个动态数据源路由器,再绑定上各自的PlatformTransactionManager
,还挺干净利落的。
数据库初始化脚本也没落下。每个数据源都能配置自己的 SQL 脚本,用spring.datasource.x.init-script
那种写法,启动时能自动初始化,适合演示或测试。
源码里结构清晰,业务代码、配置类、事务管理分得挺开,看起来也舒服。跑一下项目,切换数据源、看事务效果,基本上就知道怎么用了。
如果你正好在搞读写分离
、多库数据隔离
或者想搭个数据中台
啥的,这份代码真还不错,拿来直接开工都行。
20.3MB
文件大小:
评论区