1

场景:

我有一个 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.Timestampjava 端是 datetime 类型。

当我查看收到的 xml 时,我看到了正确的日期格式:“2012-01-22 15:20:51”

知道可能出了什么问题吗?

4

1 回答 1

0

最近没有出现这个错误。我最近处理了 SimpleDateFormat 使用的并发问题,所以也许这就是问题所在。

于 2012-03-27T14:55:27.123 回答