springboot整合mybatis进行跨库查询

业务场景:

当一个公司大了之后就会将各种业务进行分开,最简单的就是例如:公司的机构表,那么就会将他们分成开来,那么就会在一个实例中,

如果要获取相关信息就会去关联这张表进行关联查询

从而导致了跨库关联多表查询:

首先看sql:

 select
        f.id as id,
        m.name as name
        from fr_db.person f left join mall.person_test m
        on f.id =m.pid
        where f.id = #{id,jdbcType=INTEGER}

这个是在mybatis.xml文件的进行的,可以看到我是从一个实例中进行查询的,

数据库一   fr_db     数据库二: mall表:

这个只是一个测试案例,没有按照公司的表进行分离,

  

 

可以看到上面是两个库,所以就可以知道,是进行跨库查询

可以看到我yml文件配置:

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url : jdbc:mysql://127.0.0.1:3306/fr_db?zeroDateTimeBehavior=convertToNull&autoReconnect=true&useUnicode=true&characterEncoding=utf-8
    password: 1234
    username: root
 #mybatis
mybatis:
    type-aliases-package: com.cxy.dataObject #实体类映射文件包
    mapper-locations: classpath:mapping/*.xml #生成的sql语句
server:
  port: 8082

再进行测试:

 可以看到相关内容

name是mall库中的name:

可以看到name为a,

可以看到person表中name并不是为a,所以就可以进行

原文地址:https://www.cnblogs.com/xiufengchen/p/11216952.html