解决方法
- 把数据库里的update_time 时间改成一个准确的时间就可以了!然后确保 每次插入数据 都 用数据库里的 now() ,或者 数据库里设置默认值 为null 等等多种方法,使他不要是 无效的时间格式就ok。
- 在数据库配置文件中增加zeroDateTimeBehavior 属性
jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
zeroDateTimeBehavior 属性,当遇到DATETIME值完全由0组成时,最终的有效值可以设置为,异常(exception),一个近似值(round),或将这个值转换为null(convertToNull)。
也就是说
- zeroDateTimeBehavior 设置为 exception(不设置时是默认),(设置这个属性会抛出一个SQLException异常,其SQLSate码为S1009)
- zeroDateTimeBehavior 设置为 convertToNull ,数据库会返回 null来代替 0000-00-00 这样的无效日期
- zeroDateTimeBehavior 设置为 round,数据库 会将日期转换为0001-01-01 返回。