mysql在spring+mybatis中出现value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp的几种种解决办法
Posted on 2019-06-14 17:36 谢*勇 阅读(3656) 评论(0) 编辑 收藏 举报java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp
当日期字段在数据库中可为空,并且其默认值为“0000-00-0000:00:00”,在mysql中作为一个特殊值存在。但是java日期类型不认可转换抛出以上异常。
解决方法:
1、将日期改为正常日期即可,并且修改其默认值为null。
2.修改数据库连接,增加zeroDateTimeBehavior=round ,该定义会强制该返回值为 0001-01-01 00:00:00.0
3.修改数据库连接,增加zeroDateTimeBehavior=convertToNull 该定义会强制该返回值为 null
如:url: jdbc:mysql://127.0.0.1/test?allowMultiQueries=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull