java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String] with root causejava.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String.
这是在说Date日期类型无法与String字符串类型作比较,这里出现异常的原因是sql语句写成了
<if test="deadline != null and deadline != '' ">
deadline = #{deadline},
</if>
这是错误写法,Date类型的字段只要判空就行,不需要判断是否为空字符串,正确写法如下:
<if test="deadline != null">
deadline = #{deadline},
</if>
最后写这种sql语句一般用set标签包围:
<update id="updateMapperFun" parameterType="指定参数类型" resultType="指定返回类型">
UPDATE table_name
<set>
<if test="oneColor != null and oneColor != ''">
one_color = #{oneColor},
</if>
<if test="deadline != null">
deadline = #{deadline},
</if>
</set>
WHERE my_condition = #{myCondition}
</update>
一般后端错误报500响应码,前端错误报4开头的响应码,如果你是前端错误,可以检查一下参数类型是否和后端要求传递的类型一致。