生而为人

程序员的自我修养

0%

mybatis技巧

Mybatis中判断集合的 size 不为空
1
2
3
4
5
6
<if test="null != staffCodeList and staffCodeList.size > 0">
and gui.USER_CODE not in
<foreach collection="staffCodeList" item="staffCode" open="(" separator="," close=")">
#{staffCode}
</foreach>
</if>
判断参数为空

1.判断Double类型:probability = #{probability},,在实体类中probability字段是Double类型;

2.判断Integer类型:face_value = #{faceValue}, ,在实体类中faceValue字段是Integer类型;

3.判断String类型:coupon_name = #{couponName}, ,在实体类中couponName是String类型;

4.判断Date类型:begin_time = #{beginTime}, ,在实体类中beginTime字段是Date类型;

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

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

mybatis 中 foreach collection的三种用法

mybatis 中 foreach collection的三种用法

Mybatis使用IN语句查询

Mybatis使用IN语句查询

返回数据

mybatis插入数据后返回对象id

mybatis插入返回id或对象