mybatis使用if判断参数是否为空

Posted LongBar

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis使用if判断参数是否为空相关的知识,希望对你有一定的参考价值。


1.判断Double类型:<if test="probability != null">probability = #{probability},</if>,在实体类中probability字段是Double类型;

2.判断Integer类型:<if test="faceValue != null">face_value = #{faceValue}, </if>,在实体类中faceValue字段是Integer类型;

3.判断String类型:<if test="couponName != null and couponName != ‘‘">coupon_name = #{couponName}, </if>,在实体类中couponName是String类型;

4.判断Date类型:<if test="beginTime != null">begin_time = #{beginTime}, </if>,在实体类中beginTime字段是Date类型;

因为String类型是符合的,但是如果是Integer类型的话,如果变量的值是0,即 faceValue = 0, mybatis在进行 faceValue != ‘‘ 的时候会认为  faceValue 的值是空字符串, 即 faceValue == ‘‘ 为true;

同理,Double,Date也是如此。所以如果是Integer类型,Double类型,Date类型只需要判断 != null 即可。如果String类型需要判断不等于0,则需要写name != ‘0‘.toString(),否则会报错。

以上是关于mybatis使用if判断参数是否为空的主要内容,如果未能解决你的问题,请参考以下文章

mybatis怎样判断list是不是为空

mybatis 并且的判断

mybatis条件判断

mybatis判断数组为空或null

Mybatis总结

mybatis if test 采坑记