当传入的查询条件的值为整型时
private Integer examine;
mybatis里的<if>标签做判断时,传入的值为0
<if test="examine != null and examine != ''">
and examine = #{examine}
</if>
以上判断会将条件卡住进不去,因此该条sql不会拼接该条件
因为0在mybatis里等于 ’ '(空字符串)
所以应该写成
<if test="examine != null">
and examine = #{examine}
</if>
在MyBatis的查询中,当使用`<if>`标签进行条件判断时,要注意整型0与空字符串在逻辑上可能被视为相等。如果直接写成`examine!=nullandexamine!=''`,会导致0值的条件不被满足,从而无法正确拼接SQL。正确的做法是仅判断`examine!=null`来避免这个问题。这个细节对于确保SQL查询的准确性至关重要。
1632

被折叠的 条评论
为什么被折叠?



