springboot restful mybatis连接mysql返回日期格式不对
时间比数据库中时间早8个小时
问题原因一:mybatis原因
一开始mybatis获取的数据比数据库中早8个小时,经过排查mybatis采用jdbc没有配置配置时区,系统采用默认时区:UTC
修改数据库连接字符串,
在字符串中添加时区:serverTimezone=Asia/Shanghai 如果不起作用还需添加:useLegacyDatetimeCode=true(兼容旧的日期格式)
jdbc:mysql://localhost:3306/dd?useSSL=false&characterEncoding=UTF-8&useLegacyDatetimeCode=true&serverTimezone=Asia/Shanghai
问题原因二:Springboot 原因
没有设置时区,采用了默认时区 UTC
在application.properties中,设置时区:spring.jackson.time-zone=Asia/Shanghai
或者在 application.yml中设置