用mybatis执行查询时报错: invalid comparison: java.util.Date and java.lang.String
原代码如下:
<if test="startDate != null and startDate != '' and endDate!= null and endDate!= ''">
AND cft.send_order_time BETWEEN #{startDate} AND #{endDate}
</if>
- 过程: 起初我以为原因在于参数的参数格式不对, 不是日期而是字符串类型. 就将参数转化为date格式:
#{startDate}:date
结果还是不行(其实就是日期格式, 我当时不知道为什么所以就试试). - 解决: 后来才发现原来问题出在
的 test里 startDate != ''
, 把这个去掉即可(因为我参数进来的时候的类型就是日期类型)