首页 » java

Cause: java.lang.IllegalArgumentException: invalid comparison: java.time.LocalDateTime and java.lang

   发表于:java评论 (0)   热度:1974
失败:nested exception is org.apache.ibatis.exceptions.PersistenceException: 
 ### Error querying database. Cause: java.lang.IllegalArgumentException: invalid comparison: java.sql.Timestamp and java.lang.String
 ### Cause: java.lang.IllegalArgumentException: invalid comparison: java.sql.Timestamp and java.lang.String

数据库中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>

 

(。・v・。)
喜欢这篇文章吗?欢迎分享到你的微博、QQ群,并关注我们的微博,谢谢支持。