JDK 中以下方法的 joda-time 等价物是什么。
- TimeZone.getOffset()
- TimeZone.getRawOffset()
- TimeZone.inDaylightTime()
- TimeZone.useDaylightTime()
- TimeZone.getDSTSavings()
我的主要想法是按照大多数 SO 帖子的建议将以下内容存储在数据库中
- UTC 时间 = joda Instant
- time zone offset = 这在 joda 中是等效的?
- dst offset = 这在 joda 中是等效的?
我还应该存储 RawOffset 还是 DST 调整后的偏移量?
最佳答案
- DateTimeZone.getOffset()
- DateTimeZone.getStandardOffset()
- >! DateTimeZone.isStandardOffset()
- >! DateTimeZone.isFixed()
- 不确定。
如果您只保存 UTC 时刻和时区 ID(即美国/纽约和欧洲/伦敦,而不是 EST 和 GMT),那么您无需担心存储原始偏移量。特别是当偏移量随着烦人的频率而变化时。让 Joda 和 tz 数据库为您完成所有工作。所以存储:
- ReadableInstant.getMillis()
- DateTimeZone.getId()
在 Java 8 中,只需使用通过 DateTimeFormatter.ISO_ZONED_DATE_TIME
保留的 ZonedDateTime
。
关于java - 几个 JDK TimeZone 函数的 joda-time 等价物是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4870637/