問題描述
在Springboot項目中,當我們把數據庫中的時間類型查詢出來后,通過JSON字符串后發給前端,前端收到數據再把時間戳轉換回來的時候會發現得到的時間和數據庫中的時間相差8小時。
這種問題一般都是時區問題產生的,有兩個方法可以解決這個問題。
解決方法
方法一
url: jdbc:mysql://localhost:3306/xxx?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2b8
在你的yaml配置文件中,把JDBC的URL后面加上serverTimezone=GMT%2b8
其中%2b是轉義后的+
方法二
spring:
jackson:
date-format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8
在yaml中,配置Jackson的時區和日期格式,這個對我來說沒有生效,不過在網上查到有這種方法,我也順帶放出來了