java.sql.Timestamp有一个时区[复制]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我读过的所有内容都说时间戳是UTC,没有偏移量或时区。但是,99%的肯定是MS Sql Server JDBC正在读取数据库中的值并将其设置在我的本地时区。

更新:请不要引用可能重复的问题询问如何使用UTC日期时间设置时间戳。我的问题是如何从数据库中读取UTC时间戳值。

调试器显示保持为GregorianCalender对象的对象,其时区为Denver。

enter image description here

java jdbc timestamp timezone java.time
1个回答
1
投票

这似乎解决了这个问题。我猜它什么时候返回一个LocalDateTime它不使用时区。

LocalDateTime localDT = timestamp.toLocalDateTime();
odt = localDT.atOffset(ZoneOffset.UTC);

根据@Ole V.V的建议更新

© www.soinside.com 2019 - 2024. All rights reserved.