啥也不说先贴两个代码: 一:MVC层配置 @Configuration public class JacksonConfig { /** 默认日期时间格式 */ public static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss"; /** 默认日期格式 */ public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd";
原配置写法:<if test="assetFlaw.handleTime != null and assetFlaw.handleTime != ''"> and af.handle_time like CONCAT('%',#{assetFlaw.handleTime},'%')</if> 原因: 这个错误是由于mybatis版本问题导致,这个版本中时间不能与空字符串进行比较.3.3.*版本应该都会有这个问题. 解决:
整了半天终于找到问题所在:在mapper文件中,对该参数进行了和字符串的对比,如下: <if test="startTime != null and startTime != '' and endTime != null and endTime != ''"> AND createTime BETWEEN #{startTime} AND #{endTime} </if> 修改为以下格式解决问题: <if test="startTime != n