java - 服务器时间与本地时间不一致如何处理?

标签 java mysql datetime

我遇到服务器时间和客户端时间差异的问题。

我在印度,我正在存储来自印度的日期时间/时间戳(假设在 14:00),但它在数据库中的保存时间为 +5.30 小时(即,如果本地时间为 14:00,则它会保存为 19: 30)。在显示时我得到了后一个值(即:19:30)。这可能是因为服务器时间发生变化,服务器位于其他国家。

我有许多使用这个时间的过滤函数,因此我所有使用日期时间的函数都会受到影响。遇到这种情况该如何处理呢?请给我建议。

最佳答案

我认为

(i.e, if local time is 14:00 it is persisted as 19:30)

与您的服务器和本地系统的时区不匹配有关,与绝对时间的差异无关。由于 5.30 小时不匹配,我假设数据库以 UTC 存储。您需要在与数据库的连接上设置正确的 TZ,或者将从数据库给出的时间戳转换为本地 TZ(无论是什么)。

关于java - 服务器时间与本地时间不一致如何处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22378556/

相关文章:

java - 将 Apache POI 添加到 Eclipse

mysql - 在 Mac 上无法连接到 '127.0.0.1' (61) 上的 MySQL 服务器

php - "input type=text"中的默认文本

java - RestController - 在反序列化 POJO 中使用 @DateTimeFormat

python - 将月年对解析为日期时间

c# - 如何在 C# 中将连续日期范围列表切入财政年度列表?

java:是否有一个循环可以做到这一点?

java - 如何在另一个数组中使用一个数组的索引?

java - 以自定义的可序列化形式存储对象

mysql - 将列表插入到Mysql中的单个列中