SpringBoot系列:多数据源动态切换(AOP方式实现)

本文介绍了如何在SpringBoot项目中结合MybatisPlus和Druid实现多数据源动态切换,通过AOP在运行时选择数据源。详细步骤包括环境搭建、配置、数据源枚举创建、动态数据源管理器设计以及测试。最终,通过测试验证了数据源切换的正确性。
摘要由CSDN通过智能技术生成

序言

在平常,项目中经常会有集成其他数据库的情况,项目是使用spring Boot+Druid+Mybatis Plus开发的前提下。在本次的文章中主要使用SpringBoot+Mybatisplus+druid实现多数据源的动态切换,使用AOP的方式动态的获取数据源。在上一篇的文章中具体讲了怎么去整合MybatisPlus:SpringBoot系列:带你整合MybatisPlus

环境搭建

  • 首先我们准备好要用的数据源,在这里我准备了两个环境的数据库,一个是本地的MySql,还有一个是服务器上的MySql,分别在里面创建相同的表接口。
    在这里插入图片描述

  • 我们开始创建一个SpringBoot的项目,添加相关的依赖如下:

    <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>
    
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>
    
            <!--mybatisPlus 核心库-->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.1.0</version>
            </dependency>
    
            <!-- 引入Druid依赖,阿里巴巴所提供的数据源 -->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>1.1.21</version>
            </dependency>
    
            <!-- MybatisPlus 代码生成器 -->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-generator</artifactId>
                <version>3.2.0</version>
            </dependency>
            <!-- 模板引擎 -->
            <dependency>
                <groupId>org.apache.velocity</groupId>
                <artifactId>velocity-engine-core</artifactId>
                <version>2.0</version>
            </dependency>
    
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>1.1.9</version>
            </dependency>
    
            <!--AOP-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-aop</artifactId>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值