0.前言

在写sql语句的时候,可以实现比较动态效果,比如是否加入某个字段的筛选,这个时候就可以在mybatis框架中使用if语法。

1.用法

用法比较简单,主要用来判断字段的值,一般用来判断字段是否为空操作,比如下面这样:

   <select id="queryIndex" resultMap="indexResultMap" parameterType="java.util.Map">
        SELECT * from student
        <if test="Id !=null and Id !=''">
            AND customer_id = #{Id}
        </if>
        <if test="onlyLive !=null and onlyLive=='true'">
            AND sid=#{sid} 
        </if>
    </select>

其中test必须要写,注意test后面是双引号,其余的都是mapper层传递过来的参数。意思就是先判断Id的情况,如果Id不是空,不是null,就连接下面的and语句。下面的语句同理,还可以直接判断字符串的情况。其实parameterType不用写也可以。

分类: java