alin007的gravatar头像
alin007 2020-01-04 22:49:51

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

项目描述

此工程主要是搭建了一个标准数据库读写分离架构。应用的主要技术是spring的aop技术。最主要的是应用注解进行了数据源的切换,这个功能真的是非常难搞,debug了好多次才成功的。

运行环境

jdk8+mysql+IntelliJ IDEA+maven

项目技术(必填)

spring boot+mybatisplus+aop

数据库文件

链接:https://pan.baidu.com/s/1-YMe_dTNuG9NNQGtwwvevg
提取码:b9uq

jar包文件

maven搭建

链接:https://pan.baidu.com/s/1R8--pVxDzrJMgAM_uRJ8Ig
提取码:wiwj

是否原创(转载必填原文地址)

原创

项目截图(必填)

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

下面这个是关键的aop拦截,这个话费了好多心血啊。

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

关键代码都在下面这个截图里了,在这里我就不粘贴代码了,大家可以下载看吧。

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

运行截图(必填)

通过注解,获取到了不同数据库的数据。

http://localhost:8080/sysUser/getAll

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

http://localhost:8080/sysUser/getUserFromMasterAndSlave

因为有事务,所以从默认的Master数据库查询数据

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

spring boot项目搭建多数据源,实现主从数据库读写分离的功能

注意事项

1.在service层,如果添加了事务,那么就会都从master数据库获取数据,包括读写都是一样。这个也是试了很多次才发现的。可以说是呕心沥血了。这套代码真的是非常棒了。

2.请分别导入master,slave1,slave2三个数据库


打赏

已有1人打赏

最代码官方的gravatar头像

文件名:quanxian-master-slave.zip,文件大小:158.596K 下载
最代码最近下载分享源代码列表最近下载
HANCW  LV8 2023年3月12日
cauhui  LV16 2023年3月10日
1529860026  LV24 2022年10月17日
吴文鑫  LV1 2021年12月21日
xxxjjj123  LV6 2021年7月30日
lironggang  LV38 2021年2月23日
xhmpmail  LV17 2021年2月23日
soplha  LV10 2020年8月31日
zdxxyp  LV2 2020年7月5日
w2lijing2  LV10 2020年7月2日
最代码最近浏览分享源代码列表最近浏览
漫步的海星  LV4 2023年9月21日
HANCW  LV8 2023年3月12日
cauhui  LV16 2023年3月10日
1529860026  LV24 2022年10月17日
Hachi6  LV13 2022年6月10日
221231 2022年5月18日
暂无贡献等级
timezone  LV7 2022年4月26日
暂无贡献等级
jy1218  LV12 2022年1月18日
Wuxiaoyue  LV1 2022年1月12日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友