今天听组员说: mybatis在3.30版本及以上判定时间时 <if test="date_time != null and date_time != '' "> date_time, </if> java.lang.IllegalArgumentException: invalid comparison: cn.hutool.core.date.DateTime and java.lang.String 去掉 and date_time != ' ' 就可以正…
在重构项目的时候,遇到了mybatis的一个异常: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String 随后在网上查询解决方法时看到,这个是mybatis在3.3.0版本修复的一个bug,3.3.0之前是没有问题,之后就会报异常. 原因是: 对于时间参数进行比较时的一个bug. 如果拿传入的时间类型参数与空字符串''进行对比判断则会引发异常. <if test=&quo…
### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: cn.xiaojian.blog.po.BlogType and java.lang.String### Cause: java.lang.IllegalArgumentException: invalid comparison: cn.xiaojian.blog.po.BlogType and java.lang…
原因是在使用<if> 进行条件判断时, 将datetime类型的字段与 ' ' 进行了判断,导致的错误 解决, 只使用  <if test="createTime != null"></if> 做判断就行了 详细可参考: https://blog.csdn.net/wanghailong_qd/article/details/50673144…
mybatis 3.3.0中对于时间参数进行比较时的一个bug. 如果拿传入的时间类型参数与空字符串''进行对比判断则会引发异常. 所以在上面的代码中去该该判断, 只保留非空判断就正常了 <if test="createTime != null and createTime !='' " >  date(create_time) = date(#{createTime,jdbcType=TIMESTAMP}) </if> 改为 <if test="…
原因:在Mapper.xml中对非字符串类型的数据进行了是否为空判断,如date类型的数据Create_Date != '',decimal类型的数据price != ''都会报这个错误 只有字符串才需要非空判断…
问题原因:Mybatis中对于时间参数进行比较时的一个BUG. 如果拿传入的时间类型参数与空字符串‘‘进行对比判断则会引发异常.,所以应该去掉该判断, 只保留非空判断就正常了 <if test="createTime != null and createTime !=‘‘ " > date(create_time) = date(#{createTime,jdbcType=TIMESTAMP}) </if> 改为 <if test="create…
在mapper.xml中 , 如果单参数是String类型 , 且在sql语句中对参数进行了判断 , 如下 when 中的判断 , 如果出现 if 判断也是一样的.都需要把判断中的参数用 _parameter 来代替 ,. 另外orcal中判断字段是否为空需要使用 is null , 同理,判断不为空使用 is not null . 错误查询: <select id = "select" resultMap="ResultMap" parameterType=…
原来的xml文件 <if test="null != endDate and '' != endDate"> AND rr.REG_DATE <= #{endDate} </if> 改为 <if test="null != endDate"> AND rr.REG_DATE <= #{endDate} </if> 即可,应该在判断时,发现endDate类型时Date所以去掉即可…
原文链接:http://blog.csdn.net/wanghailong_qd/article/details/50673144 mybatis异常invalid comparison: java.util.Date and java.lang.String 开发中改动mapper文件后需要重新编译发布, 由于工程比较大非常耗时, 所以为方便快速测试干脆写了一个小java工程. 工程中用到的dao, mapper和实体类都是从工程中拷出来的, 数据库也是同一个. 但是遇到一个比较奇怪的问题 实…