博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis动态SQL中的sql片段
阅读量:4886 次
发布时间:2019-06-11

本文共 857 字,大约阅读时间需要 2 分钟。

在mybatis中通过使用SQL片段可以提高代码的重用性,如下情景:

  1、创建动态SQL

    <sql id="sql_count">select count(*)</sql>

  2、使用

    <select id="selectListCountByParam" parameterType="map" resultType="String">

      <include refid="sql_count"/> from table_name

    </select>

  3、解析

    在使用sql片段时使用include标签通过sql片段的id进行引用,sql片段的ID在当前空间必须为唯一的

    当然,sql片段中也可以写其他的内容,只要符合语法规范都是可以的。如下:

    <sql id="sql_where">
      <trim prefix="WHERE" prefixoverride="AND | OR">
        <if test="id != null">AND id=#{id}</if>
        <if test="name != null and name.length()>0">AND name=#{name}</if>
        <if test="gender != null and gender.length()>0">AND gender=#{gender}</if>
      </trim>
    </sql>

    <select id="updateByKey" parameterType="Map" resultType="List">
      select * from user
      <include refid="sql_where">
    </select>

转载于:https://www.cnblogs.com/qiankun-site/p/5762352.html

你可能感兴趣的文章
css限制单行文字字数的问题
查看>>
MYSQL 优化
查看>>
PAT Basic 1028
查看>>
cadence设计思路
查看>>
Java静态同步方法和非静态同步方法
查看>>
React与Vue的差异和相似地方
查看>>
【oneday_onepage】——Growth Is A Bitch
查看>>
zero-copy总结
查看>>
Android的onCreateOptionsMenu()创建菜单Menu
查看>>
com.alibaba.dubbo.rpc.RpcException和 com.alibaba.dubbo.remoting.TimeoutException
查看>>
老男孩python基础知识练习题(一)上
查看>>
搜索引擎中同义词的挖掘及使用
查看>>
Create Volume 操作(Part III) - 每天5分钟玩转 OpenStack(52)
查看>>
DtToExcel
查看>>
MVC之路由
查看>>
程序和内存中的情况
查看>>
直接定址表03 - 零基础入门学习汇编语言74
查看>>
Win32基础知识1 - Win32汇编语言002
查看>>
redis持久化方法对比分析
查看>>
对缓存的思考——提高命中率
查看>>