这个问题有多种变体,但我正在努力寻找解决我的问题的方法。
我有一个基于 JPA、Eclipselink 和 MySQL 的应用程序。当在特定表中添加或更新记录时,使用 new java.util.Date() 将“更新”日期字段设置为现在。
这是我的实体类上的字段:
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "Updated", unique = false, nullable = true)
private Date updated;
简单地设置如下:
record.setUpdated(new Date());
出于某种原因,数据库中设置的日期似乎总是比现在提前 12 小时?
我考虑了 AM/PM 转换、时区问题并检查了服务器时间,但一切似乎都正常。
抱歉,如果这很简单,但我有点迷失了!
最佳答案
检查服务器的jvm选项中是否设置了-Duser.timezone。如果设置了,则检查它的值。
关于java - 为什么JPA似乎提前12小时持久化java.util.Date(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42527004/