【问题标题】:Java timezone & AWS EC2Java 时区和 AWS EC2
【发布时间】:2017-02-19 08:55:37
【问题描述】:

我从客户端接收 ISO8601 时间,将其转换为 UTC,并将其保存为 AWS EC2 服务器上的时间戳,DateTimeZone 如下

    DateTime groupExpectedDate = sentGroup_expected_date_time.withZone(cityTimezone);

    Timestamp groupExpectedDateTimestamp = new Timestamp(groupExpectedDate.getMillis());

当我在本地服务器上运行代码时,会为该特定城市正确分配时间。但是,当我推送到 AWS EC2 服务器时,时间是错误的。我应该在 AWS EC2 上执行配置吗?

【问题讨论】:

  • 我会添加一些日志记录,看看它从什么时候开始与您的本地机器不同。我猜它在某个时候使用系统时区,并且 AWS 服务器上的时区设置与您的本地服务器不同。没有任何“EC2 特定”可以这样做。 EC2 服务器只是一个 Linux 服务器。
  • sentGroup_expected_date_time是什么类型的对象?

标签: java amazon-web-services timezone


【解决方案1】:

您应该在您的环境服务器中一致地设置 Timezone,或者在 Java 代码中强制使用 Locale,或者在您的底层操作系统中设置时区(您的问题中没有说明)

您使用的是哪个Timestamp 类?来自java.sql.Timestamp 还是另一个?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-07
    • 2014-11-15
    • 1970-01-01
    • 2016-06-23
    • 1970-01-01
    • 2015-10-29
    相关资源
    最近更新 更多