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>
相关推荐
大牧师6 小时前
TypeORM 入门教程
后端·sql·mysql·orm·nest·typeorm
RunProof可证工程6 小时前
AI 写的登录接口能跑,上线前我却查出 SQL 注入写法
sql·代码规范
YangYang9YangYan8 小时前
校招视角|财务数字化岗位 SQL、工具、项目完整备考指南
大数据·数据库·sql
筝筝ba13 小时前
OpenBMC 自动化测试中的多进程陷阱:从 Execute Process 返回异常到 output.xml 损坏问题分析
xml·linux·运维·服务器·网络
编程_大白13 小时前
IDEA配置SQL方言
java·sql·intellij-idea
霸道流氓气质13 小时前
MyBatis 与 SQL 层面关键技术详解
windows·sql·mybatis
云贝贝贝14 小时前
MySQL 运维高频 6 坑:字符集、超时、SQL_MODE、隐式转换、Online DDL、主从延迟
运维·sql·mysql
2501_9336707914 小时前
采购运营校招Excel能力清单:函数、透视表、ERP数据与SQL入门
数据库·sql·excel
₍˄·͈༝·͈˄*₎◞ ̑̑码1 天前
MyBatis操作数据库
数据库·mybatis
冰暮流星1 天前
mysql之左外连接与右外连接
数据库·sql