Mybatis异常 invalid comparison: java.util.Date and java.lang.String

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_41413619/article/details/88710237

这是mybatis的一个比较bug  所有在mapper.xml中进行判断比较的话是不能用日期和字符串去比较的   不然就会报invalid comparison: java.util.Date and java.lang.String异常

<if test="StartTime!=null and StartTime!=''">
    and Manager_StartTime &gt;= #{StartTime}
</if>

之前代码是这样写的   就报了上面的错误  但是把和字符串的比较去掉后就完美解决了

修改后的代码如下

<if test="StartTime!=null">
	and Manager_StartTime &gt;= #{StartTime}
</if>

好了  到此应该是可以解决了   如果还不行  请往下看  因为日期包分为两种一种是util.date另一种是sql.date 类型  两中类型之间需要转换一下

ok!完美解决   如前台显示时间乱码   或者不想要时间   可以在实体类中将日期类型改为sql.date   或者加上

@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")

猜你喜欢

转载自blog.csdn.net/qq_41413619/article/details/88710237