怎么解决报错mybatis invalid comparison: java.sql.Timestamp and java.lang.String

本篇内容主要讲解“怎么解决报错mybatis invalid comparison: java.sql.Timestamp and java.lang.String”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决报错mybatis invalid comparison: java.sql.Timestamp and java.lang.String”吧!

mybatis报错:Cause: java.lang.IllegalArgumentException: invalid comparison: java.time.LocalDateTime and java.lang

数据库中Time的格式是

`add_time` datetime DEFAULT NULL,

java中Mybatis中的时间格式:

 <if test="addTime != null and addTime != '' ">
and  add_time &lt;= #{addTime,jdbcType=TIMESTAMP}
</if>

分析错误原因:
mybatis 3.3.0中对时间参数进行比较时:如果传入的时间参数与空字符串('')进行对比则会发生异常,在上面的sql中我有对比addTime!='' 这个就会引起异常.所以需要对其删除即可没有异常

修改后:

 <if test="addTime != null ">
and  add_time &lt;= #{addTime,jdbcType=TIMESTAMP}
</if>

到此,相信大家对“怎么解决报错mybatis invalid comparison: java.sql.Timestamp and java.lang.String”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!