Mybatis-动态 SQL语句

if标签

判断语句,用户单条件分支判断

where标签

为了简化上面where 1=1的条件拼装,我们可以采用 标签来简化开发

foreach标签

场景:传入多个 id 查询用户信息
标签用于遍历集合,它的属性:
collection:代表要遍历的集合元素,注意编写时不要写#{}
open:代表语句的开始部分
close:代表结束部分
item:代表遍历集合的每个元素,生成的变量名
sperator:代表分隔符

<foreach collection="ids" open="id in ( " close=")" item="id" separator=",">
    #{uid}
</foreach>

choose标签

多个选项只执行一个

<choose>
    <when>
    </when>
    <otherwise>
    </otherwise>        
</choose>

set标签

主要用于更新操作,去除SQL语句的最后一个多余的逗号

bind标签

可以将OGNL表达式的值绑定到一个变量中,方便后来引用这个变量值

include

Sql 中可将重复的 sql 提取出来,使用时用 include 引用即可,最终达到 sql 重用的目的

<!-- 抽取重复的语句代码片段 -->
<sql id="defaultSql">
    select * from user
</sql>

<!-- 配置查询所有操作 -->
<select id="findAll" resultType="user">
    <include refid="defaultSql"></include>
</select>

猜你喜欢

转载自www.cnblogs.com/ctrlcoder/p/10699235.html