gpt4 book ai didi

java - 使用 Joda PersistentDateTime 保留提供的时区

转载 作者:行者123 更新时间:2023-12-03 05:14:49 25 4
gpt4 key购买 nike

我有一个场景,我需要存储日期时间所在的时区,而不是转换为本地时区。

例如,我获取Europe/Berlin时区和America/New_York时区的日期。如果我的 JVM 位于柏林,则 America/New_York 的日期时间将转换为柏林时区。

我正在使用 spring 注释:

@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")

我知道这会将提供的日期时间转换为保留在本地日期时间中。但如何避免这种情况并将日期时间存储在任何时区。还有其他类型可以实现该功能吗?

最佳答案

这里有三个选项:

  • PersistentDateTimeAndZone - 将您的 DateTime 保存在两个单独的列中 - 一列用于时间戳(此 DateTime 时区的本地时区),一列用于时区 ID
  • PersistentDateTimeAndZoneWithOffset - 与上面相同,但时区列将保存时区偏移
  • PersistentDateTimeAsUtcString - 将所有内容放在一栏中,如下所示:

    Persist DateTime as a string of three parts:

    • the DateTime transformed into UTC time, formatted as such: yyyy-MM-dd'T'HH:mm:ss.SSS
    • the underscore symbol (_)
    • the id of the DateTime's original time zone (for example Europe/London or UTC)

关于java - 使用 Joda PersistentDateTime 保留提供的时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45998822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com