mybatis xml 文件 sql include 的用法

mybatis xml 文件中对于重复出现的sql 片段可以使用标签提取出来,在使用的地方使用标签引用即可具体用法如下:

复制代码
    <sql id="Base_Column_List">
        id,name
    </sql>
    
    <select id="select">
        select
        <include refid="Base_Column_List"/>
        from t
    </select>

在sql 片段中可以使用${}传入参数,如下:

复制代码
    <sql id="Base_Column_List">
        ${tableName}.id,${tableName}.name
    </sql>
    
    <select id="select">
        select
        <include refid="Base_Column_List">
            <property name="tableName" value="t"/>
        </include>
        from t
    </select>

对于多个xml文件需要同时引用一段相同的 可以在某个xml 中定义这个 sql 代码片段,在需要引用的地方使用全称引用即可,例子如下:

ShareMapper.xml

复制代码
    <mapper namespace="com.lxw.ShareMapper">
        <sql id="Base_Column_List">
         id,name
        </sql>
    </mapper>

CustomMapper.xml

复制代码
    <mapper namespace="com.lxw.CustomMapper">
        <select id="selectSome" >
            select
            <include refid="com.lxw.ShareMapper.Base_Column_List"/>
            from t
        </select>
    </mapper>
相关推荐
Bat U5 小时前
JavaEE|SpringBoot快速入门
spring boot·java-ee·mybatis
le1616167 小时前
Android Compose基础布局——从传统XML的视角切入了解
xml·compose
wanghowie7 小时前
26.v3 核心升级:语义层 + 指标体系——禁止 LLM 直连 SQL
数据库·sql
yumgpkpm8 小时前
华为HUAWEI昇腾910B下千问Qwen3.6-27B在的推理加速实践
sql·华为·langchain·json·ai编程·ai写作·gpu算力
ZC跨境爬虫9 小时前
SQL学习日志_Day2_深入SQL语法与数据库层级结构
数据库·sql·学习·oracle
码不停蹄的玄黓9 小时前
MySQL唯一索引能否做主键索引
数据库·sql·mysql
小旭95279 小时前
MySQL 主从复制、MyCat 读写分离与分库分表实战
java·数据库·sql·mysql·database
ZC跨境爬虫10 小时前
SQL学习日志 Day_1:初识SQL,开启数据之旅
数据库·sql·学习
zxfBdd10 小时前
doris insert into和with as 合用
数据库·sql
wanghowie10 小时前
25. v2 实战:接入 Doris + SQL 三阶段(Planner / Optimizer / Execution)
数据库·sql