zoukankan      html  css  js  c++  java
  • Springboot+mybatis-plus+mysql+clickhouse集成多数据源

    1.导入相关依赖

    <dependency>
                <groupId>ru.yandex.clickhouse</groupId>
                <artifactId>clickhouse-jdbc</artifactId>
                <version>0.2.4</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
                <version>3.2.0</version>
            </dependency>
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>mybatis-plus-boot-starter</artifactId>
                <version>3.2.0</version>
            </dependency>

    2.因为之前项目用的是mybatis现在改成mybatis-plus所以需要在pom里面把之前的mybatis生成的冲突给解决掉

     1  <dependency>
     2             <groupId>com.xlkh</groupId>
     3             <artifactId>cloud-platform-common</artifactId>
     4             <exclusions>
     5                 <exclusion>
     6                     <artifactId>slf4j-log4j12</artifactId>
     7                     <groupId>org.slf4j</groupId>
     8                 </exclusion>
     9                 <exclusion>
    10                     <artifactId>mybatis</artifactId>
    11                     <groupId>org.mybatis</groupId>
    12                 </exclusion>
    13                 <exclusion>
    14                     <artifactId>mybatis-spring</artifactId>
    15                     <groupId>org.mybatis</groupId>
    16                 </exclusion>
    17             </exclusions>
    18         </dependency>

    3.(很重要)添加相关的配置文件

     1 spring:
     2   datasource:
     3     dynamic:
     4       primary: mysql  # 配置默认数据库
     5       strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
     6       datasource:
     7         mysql : # 数据源配置
     8           url: jdbc:mysql:IP+Port
     9           username:账号
    10           password: 密码
    11 driver-class-name: com.mysql.jdbc.Driver 12 clickhouse: # 数据源2配置 13 url: jdbc:clickhouse:IP+Port 14 username: 15 password: 16 driver-class-name: ru.yandex.clickhouse.ClickHouseDriver

    这一步我没有用阿里巴巴的Druid的连接池,不知道为啥用了Druid在项目里面一直启动不成功,报数据源的URL找不到,于是就把项目里关于Druid的全部删除掉,使用的是spring框架自带的Hikari连接池

    后台启用日志可以看见mysql和clickhouse注入成功

     同时需要在启动类上面让spring启动时不用找数据源

    4.最后就是在service的方法上面加一个注解

     @DS这个注解的意思是这个方法使用的是哪个数据源,因为你在yml里配置默认是mysql所以使用mysql的接口就不要加这个注解

    5.测试接口是否成功

     大功告成

  • 相关阅读:
    Wedding(2-SAT)
    JSOI2010 满汉全席
    2-SAT问题
    Tarjan求桥
    遥远的国度
    NOIP2014 联合权值
    部落冲突
    仓鼠找sugar
    2018.09.09 DL24 Day2总结
    php一些易犯的错误
  • 原文地址:https://www.cnblogs.com/dabu/p/15506919.html
Copyright © 2011-2022 走看看