场景:
我有一个 servlet,它接收 xml,解析它们(使用 JAXB),将解析的数据保存到 MySQL DB(使用休眠),并保存 xml 的副本以供将来参考。当解析失败时,它也会保存这个 xml。在这些情况下,我会收到一封包含错误摘要的电子邮件,然后检查已保存的 xml 以寻找出错的线索。
操作进行得相当顺利。servlet 每天接收几千个 xml。
问题:
每天至少一次我收到这样的错误:
org.hibernate.exception.DataException: could not insert ..........
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value: '20122012-01-22 15:20:51' for column 'createdAt' at row 1
对于其他一些“列”,我也收到此错误。这些列在 mysql 端和java.sql.Timestamp
java 端是 datetime 类型。
当我查看收到的 xml 时,我看到了正确的日期格式:“2012-01-22 15:20:51”
知道可能出了什么问题吗?