SpringBoot+Mybatis多数据源配置和切换

网友投稿 831 2023-04-17

SpringBoot+Mybatis多数据源配置和切换

SpringBoot+Mybatis多数据源配置和切换

前言

在项目开发中,经常会涉及到一个应用程序调用多个数据的情况。今天介绍一个SpringBoot+mybatis的多数据源的解决方案。

数据库准备

创建两个数据库,两个数据库都有Im_person表,两个表中无数据。

代码结构

说明:我这里只是为了体现效果,就省略了service步骤。各位大牛开发,不喜勿喷,理解万岁,嘻嘻!!

application.yml中配置两个数据源,配置如下:

2.SpringBoot多数据源配置类。

说明:两个数据的代码基本相同,不同的是要配置好扫描包的路径,以及mybatis的SQL文件的路径。所以不同的连接DAO和mapper文件要放在不同的文件夹,方便配置管理。

实现效果

以上的配置已经实现了多数据源的配置,下面实现一个功能。通过一个接口同时向两个库的两个表中导入不同的数据。

controller代码如下:

@RestControllerpublic class DataSourceController { @Resource private MasterPersonMapper masterPersonMapper; @Resource private SlavePersonMapper slavePersonMapper; @GetMapping("/datasource") public String datasource() { ImPerson person1 = new ImPerson(); person1.setPersonId("1"); person1.setGender("男"); person1.setBirthday(new Date()); person1.setLocation("中国"); masterPersonMapper.insertSelective(person1); ImPerson person2 = new ImPerson(); person2.setPersonId("2"); person2.setGender("女"); person2.setBirthday(new Date()); person2.setLocation("中国北京"); slavePersonMapper.insertSelective(person2); return "导入成功"; }}

执行:

结果:

可以看到两个库中的两个表都导入了数据。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:国产数据库与开源代码
下一篇:一篇读懂分布式数据库的健康评估
相关文章