java與mysql數據庫時間差13個小時,時區問題

問題

今天緊急處理故障時遇到一個問題,處理數據文件時間時,java中打印時間時正確的,比如“2020-06-20 00:08:01”,寫入到數據庫就變爲了“2020-06-19 11:08:01”,時間差了13個小時,猜測可能是時區問題,java中默認美國中部時間了。

網上參考:https://blog.csdn.net/wo18237095579/article/details/90288735

解決辦法

1、使用了函數:CONVERT_TZ(t.create_time,"+00:00","+13:00")轉換爲北京時間,直接在數據庫中修改。

2、在 Java 中 JDBC 連接配置出加入 serverTimezone=GMT%2B8 或者 serverTimezone=Hongkong

url=jdbc:mysql://127.0.0.1:3306/root?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章