mybatis报错com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect date value

项目中遇到时间存入数据库时报错com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect date value: 'Fri Dec 21 15:19:22 CST 2018' for column 'UPDATE_TIME' at row 1

mybatis报错com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect date value_第1张图片

 

纠结了几个小时后发现是因为我数据库中的时间格式是yyyy-MM-dd,而没有时分秒,所以我将实体类和业务代码中的Date引入的包由java.util.Date都改为了java.sql.Date后,问题得到解决

mybatis报错com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect date value_第2张图片

 

业务代码中的Date引入包也要改为java.sql.Date,然后传入系统时间的毫秒数

mybatis报错com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect date value_第3张图片

 

至于java.util.Date和java.sql.Date的区别我的理解主要就是前者可以带时分秒,后者不带时分秒,详细的区别大家可以百度

你可能感兴趣的:(项目中遇到的坑)