一、背景
通过mybatis日志观察插入数据库的时间为当前时间,但是打开数据库表发现时间滞后了8个小时。
二、推论及解决
很容易猜到这是时区的问题。
三、最后找到的问题点如下:
jdbc:mysql://localhost:3306/rbac?characterEncoding=utf8&serverTimezone=UTC
UTC时间生效了,相当于链接在插入数据时把当前时间转换为了UTC时间,而我的当前时间是东8区的北京时间。
修改如下,问题解决:
jdbc:mysql://localhost:3306/rbac?characterEncoding=utf8&serverTimezone=PRC
或者
jdbc:mysql://localhost:3306/rbac?characterEncoding=utf8&serverTimezone=Asia/Shanghai