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>
相关推荐
Elastic 中国社区官方博客4 小时前
ES|QL 在 9.2:智能查找连接和时间序列支持
大数据·数据库·人工智能·sql·elasticsearch·搜索引擎·全文检索
q***06295 小时前
LangChain-08 Query SQL DB 通过GPT自动查询SQL
数据库·sql·langchain
i***68325 小时前
【MyBatis】spring整合mybatis教程(详细易懂)
java·spring·mybatis
吴五万6 小时前
SQL Server 表分区脚本
sql
超龄超能程序猿6 小时前
提升文本转SQL(Text-to-SQL)精准度的实践指南
数据库·人工智能·sql
旷野说6 小时前
为什么 MyBatis 原生二级缓存“难以修复”?
java·java-ee·mybatis
阿里云大数据AI技术8 小时前
MaxCompute SQL AI:让 SQL 成为你的 AI 语言
人工智能·sql
阿里云大数据AI技术8 小时前
MaxCompute SQL AI:让SQL成为你的AI语言
人工智能·sql
abments9 小时前
mybatis-plus 在lambdaUpdate中使用ypeHandler
mybatis
va学弟10 小时前
初识SQL
数据库·sql