Mybatis的if else妙用(Choose标签使用)
提示:Mybatis的if else妙用(Choose标签使用)
前言
大概内容:
在Mybatis.xml中有些情况下会遇到像Java项目中的If、else if、else这类的业务场景,但mybatis不支持这样的写法,但有它自己专属的 Choose 标签完美实现了这个功能,下面就是使用详情
提示:以下是本篇文章正文内容,下面案例可供参考
详细介绍
此处的 param是指Mapper层的入参
select
*
from
test_table
where 1=1
<choose>
<when test="null != param and '1'== param">
and id = #{param}
</when>
<when test="null != param and '2'== param">
and name = #{param}
</when>
<otherwise>
and id = "1" order by id
</otherwise>
</choose>
1.其中 when 标签相当于if test里面放的是进入判定的条件
2.他没有else if这回事,统一用when标签就行
3.otherwise标签标识else,如果都不符合的话,默认使用这个标签下的内容