所以,基本上我有一个JPA + Spring Data + Hibernate应用程序,我在其中存储日期和时间。时间对象。
想象一下,我们有以下情况:
这是一个存储“签到”数据的服务器 - 就像一个位置 办理登机手续服务的存放处,即Foursquare。
来自此存储库服务的数据在REST API中使用,而REST API又是 由Android / iOS / etc客户使用。
现在,除纬度/经度,userId等之外的每次办理登机手续时,我都会在办理登机手续时设置时间戳。
我应该如何存储此时间戳?我应该有java.util.Date对象还是Joda Time对象?我应该保留时区数据还是在持久化之前将其从时间戳中删除并使用另一个TimeZone字段?
答案 0 :(得分:1)
真正重要的是,当您通过网络发送数据时,它是以通用格式序列化的。如今最普遍的格式是ISO8601。
由于这是在特定位置的登记,因此最合适的形式是具有偏移的本地日期/时间。在ISO8601格式中,它看起来像:
2012-12-01T12:34:56-0700
我不是Java程序员,但我相信JodaTime DateTime
具有最正确的实现。