2016-10-10 60 views
2

我收到一个ISO8601时间从客户端,将其转换为UTC,并将其保存为AWS EC2服务器上的时间戳,以DateTimeZone如下Java的时区和AWS EC2

DateTime groupExpectedDate = sentGroup_expected_date_time.withZone(cityTimezone); 

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

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

+0

我会添加一些日志记录,以查看它启动的地方与本地机器不同。我猜测它在某个时刻使用的是系统时区,而AWS服务器上的时区设置与本地服务器不同。没有什么“EC2具体”可以做到这一点。 EC2服务器只是一个Linux服务器。 –

+0

什么类型的对象是'sentGroup_expected_date_time'? – gvasquez

回答

0

您应该设置Timezone始终在您的环境中的服务器,要么迫使Java代码Locale,或设置

哪些Timestamp类是您使用您的底层操作系统的时区(这不是你的问题中说明)?从java.sql.Timestamp或另一个?