首页 > 其他分享 >springBoot 读写分离

springBoot 读写分离

时间:2024-04-19 11:35:28浏览次数:16  
标签:jdbc springBoot 数据源 读写 分离 master mysql com name

1.pom.xml配置

        <!-- 读写分离api -->
     <dependency> <groupId>org.apache.shardingsphere</groupId> <artifactId>sharding-jdbc-spring-boot-starter</artifactId> <version>4.0.0-RC1</version> </dependency>
     

      <!-- 阿里druid数据库连接池api -->  
      <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid-spring-boot-starter</artifactId>
        <version>1.1.20</version>
      </dependency>

      <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.2.8</version>
      </dependency>

2.资源配置文件

spring:
  #数据源配置
  main:
    allow-bean-definition-overriding: true
  shardingsphere:
    datasource:
      names:
        master,slave
      # 主数据源
      master:
        type: com.alibaba.druid.pool.DruidDataSource
        username: root
        password: ffjy1101
        url: jdbc:mysql://localhost:3306/test1?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=false
        driver-class-name: com.mysql.cj.jdbc.Driver
      # 从数据源
      slave:
        type: com.alibaba.druid.pool.DruidDataSource
        username: root
        password: ffjy1101
        url: jdbc:mysql://localhost:3306/test2?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=false
        driver-class-name: com.mysql.cj.jdbc.Driver
    masterslave:
      # 读写分离配置
      load-balance-algorithm-type: round_robin #轮询
      # 最终的数据源名称
      name: dataSource
      # 主库数据源名称
      master-data-source-name: master
      # 从库数据源名称列表,多个逗号分隔
      slave-data-source-names: slave
    props:
      sql:
        show: true #开启SQL显示,默认false

 

3.新建test1,test2数据库,添加测试数据

 

 4.测试,先查询数据,后新增数据

 
上图可以看到查询的是从数据库
下图可以看到插入的是主数据库

 

从数据库表引擎改为myisam可以大大的提升查询效率

标签:jdbc,springBoot,数据源,读写,分离,master,mysql,com,name
From: https://www.cnblogs.com/entertain/p/18145442

相关文章

  • Springboot vue pdf/图片 加水印下载
    1:引入包<dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.27</version></dependency>2前端代码:downloadFile1(fileUrl,filename){if(filename==null||fi......
  • springBoot 多数据源配置
    常规数据源#应用端口server:port:5555spring:datasource:username:rootpassword:ffjy1101url:jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=falsedriver-class-name:com.......
  • stm32f103使用RT-Thread组件fal读写内部flash
    本次使用RT-Threadstudio编写,使用为5.02完整版,目的是将内部flash进行分区,可以直接在内部flash存储数据。一、功能配置首先是打开设置里的FAL组件,因为我这里不需要外部内存,SFUD驱动就没打开:然后是配置两个参数,一个在board.h里,定义BSP_USING_ON_CHIP_FLASH,一个是在stm32xxxx_hal_......
  • SpringBoot 3.1.10 整合Mybatis-plus(快速学会)
    一、简介1、什么是Mybatis-plus?Mybatis-Plus(简称MP)是一个Mybatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生。官网:https://baomidou.com/2、Mybatis-plus特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动......
  • mybatis-plus分页插件使用(springboot)
    1、添加依赖、、、2、自定义一个配置类importcom.baomidou.mybatisplus.annotation.DbType;importcom.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;importcom.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;importorg.sp......
  • SpringBoot项目 file not present 终局!
    在写一个文件上传接口时,从一个老项目里copy出来了一个接口,死活报错filenotpresent,参考如下步骤排查确保请求的httpheader里面的文件字段名和接口定义一致如果使用postman,则确定key和接口保持一致在保证一切都是对的情况下,检查下项目是否配置了CommonsMultipartResolv......
  • OPC DA通信,自动读写数据
    主打的就是简单,使用非常简单!opcDaTags.Add(newOpcDaTag("numeric.random.int32"));opcDaTags.Add(newOpcDaTag("time.current"));opcDaTags.Add(newOpcDaTag("textual.weekday"));opcDaTags.Add(......
  • Spring API DOC未授权访问/SpringBoot Actuator 未授权访问测试方法
    插件安装需要先安装并配置java环境,然后在burpsuite中安装apikit插件 工具扫描1)在BurpSuite中抓取请求:你将在BurpSuite中的`Proxy`标签的`HTTPhistory`中看到所有通过代理发送的请求。2)使用APIkit进行测试:在BurpSuite中,发送想要测试的请求选择**DoAutoAPIscan**来发......
  • python封装工具类之excel读写
    在python自动化过程中,如果测试用例数据在excel中,就需要去对excel进行读写操作这个测试类主要是读取excel中的测试用例,然后再将测试结果回写到excel中。excel表格格式示例(cases.xlsx):case_idcase_namemethodurldataexpectedactualresult1用户正常登录post/log......
  • springboot集成spark大数据
    1、特别申明,请注意JDK版本,最好用JDK1.8,用JDK17会导致很多报错2、导入pom依赖JDK1.8直接导入spark依赖就行。<dependency><groupId>org.apache.spark</groupId><artifactId>spark-sql_2.13</artifactId><version>3.4.1......