版权声明:本文为博主原创文章,未经博主允许不得转载。
问题描述:mybatis 之 if test 条件,参数为0时,查询条件未输出。如,当 tagtype值为0(Integer),查询条件没有拼接 and tagtype=0。传入其他值(1,2,3...)都正常 一、mybatis 配置 <!-- Where查询条件 --> <sql id="whereSQL"> <if test=" null != id"> AND id =#{id} </if> <if test=" null != tagname and '' != tagname"> AND tagname LIKE '%${tagname}%' </if> <if test=" null != tagtype and '' != tagtype"> AND tagtype = #{tagtype} </if></sql>
二、表结构
解决方法: 将 <if test=" null != tagtype and '' != tagtype"> AND tagtype = #{tagtype} </if> 修改为 <if test=" null != tagtype and '' != tagtype or 0 == tagtype"> AND tagtype = #{tagtype} </if>