0
点赞
收藏
分享

微信扫一扫

JDBC连接数据库 mysql serverTimezone存储时间戳少8小时的问题


问题:Java存储时间戳发现少了8小时

排查:

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC
换成
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=GMT%2B8

问题解决

JDBC连接数据库 mysql serverTimezone存储时间戳少8小时的问题_UTC


前者为修改之前的UTC

后者为修改之后的GMT

//指定时区为北京时间东八区
serverTimezone=GMT%2B8

如果你设置serverTimezone=UTC,连接不报错,
但是我们在用java代码插入到数据库时间的时候却出现了问题。
比如在java代码里面插入的时间为:2018-06-24 17:29:56
但是在数据库里面显示的时间却为:2018-06-24 09:29:56
有了8个小时的时差
UTC代表的是全球标准时间 ,但是我们使用的时间是北京时区也就是东八区,领先UTC八个小时。

//北京时间东八区
serverTimezone=GMT%2B8
//或者使用上海时间
serverTimezone=Asia/Shanghai



举报

相关推荐

0 条评论