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>
相关推荐
晴空๓3 小时前
Spring Boot项目如何使用MyBatis实现分页查询
spring boot·后端·mybatis
LUCIAZZZ12 小时前
简单的SQL语句的快速复习
java·数据库·sql
一张假钞14 小时前
Spark SQL读写Hive Table部署
hive·sql·spark
Leven19952716 小时前
Flink (十三) :Table API 与 DataStream API 的转换 (一)
数据库·sql·flink
一缕叶18 小时前
mybatis(78/134)
mybatis
小安同学iter1 天前
MySQL数据库 (三)- 函数/约束/多表查询/事务
大数据·数据库·sql·mysql
安清h1 天前
【基于SprintBoot+Mybatis+Mysql】电脑商城项目之用户注册
数据库·后端·mysql·spring·mybatis
yang_shengy1 天前
【JavaEE】Spring(5):Mybatis(上)
spring·java-ee·mybatis
努力成为DBA的小王2 天前
MySQL(导入sql文件)
linux·运维·数据库·sql·mysql
字节全栈_PVK2 天前
Flask数据的增删改查(CRUD)_flask删除数据自动更新
数据库·flask·mybatis