springboot mybatis 外部的mapper.xml引用公共片段sql

公共片段

<!-- CommonMapper.xml -->
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="common.commonSqlFragments">
    <sql id="getUserCustomerNo">
        select distinct sd.customer_no from sys_dept sd
            left join enterprise_detail ed on ed.customer_no = sd.customer_no
            left join sys_role_dept srd on srd.dept_id = sd.dept_id
            left join sys_role sr on sr.role_id = srd.role_id
            left join sys_user_role sur on sur.role_id = sr.role_id
        where sd.customer_no is not null and sd.customer_no != ''
            and ed.customer is not null and ed.customer != ''
            and sur.user_id 
    </sql>

</mapper>

其他mapper.xml引用CommonMapper.xml片段
使用namespace+id

<if test="userId != null and userId != ''">
                and a.Customer_No in (
                    <include refid="common.commonSqlFragments.getUserCustomerNo"/> = #{userId}
                )
            </if>

application.yml中部分配置,确保能加载CommonMapper.xml

mybatis: 
  # 配置mapper的扫描,找到所有的mapper.xml映射文件
  mapperLocations: classpath*:mybatis/**/*Mapper.xml
  # 加载全局的配置文件
  configLocation: classpath:mybatis/mybatis-config.xml
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值