当前位置: 首页 > news >正文

MybatisPlus------多数据源环境(十一)

MybatisPlus------多数据源环境(十一)

生产环境中常常会存在多个数据源。
比如读写分离、一主多从、混合模式等等。
首先再pom文件中需要引入依赖:
多数据源所需要使用到的依赖

<!--        多数据源所需要使用到的依赖--><dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>3.5.0</version></dependency>

项目中已存在application.properties文件,现在新建application.yml文件,yml文件会覆盖properties文件,【此处涉及到SpringBoot的文件优先级以及文件加载顺序】
新建application.yml文件并配置如下信息:
此处配置了两个数据源,分别是master以及slave_1。

spring:# 配置数据源信息datasource:dynamic:# 设置默认的数据源或者数据源组,默认值为masterprimary: master# 严格匹配数据源,默认false,true未匹配到指定数据源时抛异常,false使用默认数据源strict: falsedatasource:master:url: jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8&characterEncoding=utf-8&userSSL=falsedriver-class-name: com.mysql.cj.jdbc.Driverusername: rootpassword: 123456slave_1:url: jdbc:mysql://localhost:3306/demo?serverTimezone=GMT%2B8&characterEncoding=utf-8&userSSL=falsedriver-class-name: com.mysql.cj.jdbc.Driverusername: rootpassword: 123456

配置方面就是以上信息。
接下来是使用:

只需要在ServiceImpl上加入@DS注解即可,该注解需要传入指定数据源的名字。不传入值则默认主数据源
@DS注解可以加在方法上或者类上,同时存在就近原则,方法上注解 优先于 类上注解。加在类上,则该类上所有方法都会使用该数据源

@DS("master")
@Service
public class BaseProcedureServiceImpl extends ServiceImpl<BaseProcedureMapper,BaseProcedure> implements BaseProcedureService {

通用mapper中查询是以select开头,通用service查询使用get开头。
使用哪个就指定哪个数据源即可。

有问题欢迎私聊

http://www.lryc.cn/news/33119.html

相关文章:

  • Tomcat+IDEA+Servlet能显示页面但提交form表单出现404问题
  • 【蓝桥杯集训16】多源汇求最短路——Floyd算法(2 / 2)
  • simulink stateflow 状态机
  • 水库大坝安全监测的主要坝体类型介绍
  • 物理层概述(二)重点
  • 成都待慕电商:抖音极速版商品卡免佣扶持政策规则
  • 青岛双软认定标准
  • 【00后卷王秘籍】python自动化测试—Python自动化框架及工具
  • MySQL数据库基本操作
  • 2023年最新的站内SEO指南:如何通过关键词优化提高网站排名
  • 【Java】Java环开发环境安装
  • [蓝桥杯] 枚举、模拟和排列问题
  • C++基础了解-02-C++ 数据类型
  • 关于MSVCR100.dll、MSVCR100d.dll、Msvcp100.dll、abort()R6010等故障模块排查及解决方法
  • 【蓝桥杯集训·每日一题】AcWing 3305. 作物杂交
  • 深入浅出PaddlePaddle函数——paddle.to_tensor
  • JavaScript高级程序设计读书分享之10章——函数
  • 第八章 使用 ^%ZSTART 和 ^%ZSTOP 例程自定义启动和停止行为 - 设计注意事项
  • 工作实战之拦截器模式
  • 某美颜app sig参数分析
  • Linux - Linux系统优化思路
  • 2.Elasticsearch入门
  • RK3399平台开发系列讲解(应用开发篇)断言的使用
  • 云原生系列之使用prometheus监控nginx
  • 第六届省赛——8移动距离(总结规律)
  • C++vector 简单实现
  • 通用缓存存储设计实践
  • sheng的学习笔记Eureka Ribbon
  • 零代码工具我推荐Oracle APEX
  • InstructGPT方法简读