Spring Boot程序插入時間和MySQL數據庫顯示時間不一樣(設置數據庫時區)


 

首先查看數據庫時區

show variables like "%time_zone%";

 

# 設置全局時區

mysql> set global time_zone = '+8:00';

 

# 設置時區為東八區

mysql> set time_zone = '+8:00';

 

 

# 刷新權限使設置立即生效

mysql> flush privileges;

 

修改之后查詢顯示

 

 

 

如果這樣設置 程序插入后的時間和數據庫顯示的時間還是不一樣的話 

那就直接連接的時候指定時區

useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai

指定時區 不要選擇默認的UTC

 

 

還有一種可能就是 查詢是對的但是使用@ResponseBody注解返回json給前端的時間 相差了8個小時

springboot默認使用jackson進行json轉換,我們需要在返回的實體類中加上

 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createDate;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM