Java 使用 LocalDateTime 存储时间导致快 8 小时

2019-04-23 15:18:45 +08:00
 rizon

java 程序运行环境是 CST 时区,mysql 服务是 UTC 时区。存储数据时,Date 类型存储会减去 8 小时,LocalDateTime 存储会按照 CST 直接存储。
问题 1: 那么在不修改环境时区的情况下,这两种存储按说哪个是对的?

问题 2: 现在读取时 Date 格式的展示正确,LocalDateTime 展示时会再加上 8 小时导致时间快 8 小时。怎么正确的解决这个问题。。

问题 3: 马上要用了,怎么快速的修复这个问题???

12711 次点击
所在节点    程序员
22 条回复
Cat73
2019-04-24 09:44:48 +08:00
@rizon #18 方便的话请用 @rizon.top 后缀的邮箱向 root@cat73.org 发一封邮件来交流,或者通过回复来告诉我你的邮箱
wuyao946
2019-04-24 15:51:43 +08:00
数据库连接 url 指定时区&serverTimezone=Asia/Shanghai

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/557936

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX