springboot的时间存入数据库不一致问题

tech2023-08-18  102

前言

今天在执行new Date()后,将时间存入数据库后发现时间不一致,相差了8小时,我感觉是时区问题。一开始我以为是new Date()获取的时间不对,但输出后发现时间是正确的,是传入数据库后才不对的,最后发现连接数据库时url中的serverTimezone属性是UTC,我将它改为serverTimezone=Asia/Shanghai后时间正确。

解决方法

问题一:数据库连接方式错误,数据库中时间不对

解决方法: serverTimezone=UTC,改为serverTimezone=Asia/Shanghai

问题二:程序时区不对,new Date()后时间不对

解决方法: 在启动类 启动run方法里加上 public static void main(String[] args) {   TimeZone.setDefault(TimeZone.getTimeZone(“Asia/Shanghai”));   SpringApplication.run(BaseMicroServiceApplication.class, args); }

问题三:都不好使可以试一下

解决方法 配置文件中加spring.jackson.time-zone=GMT+8

最新回复(0)