91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springboot數據庫查詢時出現時區差異問題怎么解決

發布時間:2023-01-09 10:57:09 來源:億速云 閱讀:140 作者:iii 欄目:開發技術

今天小編給大家分享一下springboot數據庫查詢時出現時區差異問題怎么解決的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

    springboot數據庫查詢時出現的時區差異

    最近項目中使用到多數據源將MySQL庫中的數據遷移到mongo庫中,發現取出后的數據與原數據時間上會出現8小時的相差,

    最后度娘后終于解決問題,記錄一下:

    網上看到了兩種比較實用的方法,因為使用的springboot原因,所以我這里使用的是在配置文件application.yml中進行修改,另外其他方法網上都可以搜到,

    1.在連接數據庫的配置上我們添加一項

    &serverTimezone=GMT%2b8
     primary:
          jdbc-url: jdbc:mysql://******:3306/***?useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8
          username: ****
          password: *****
        secondary:
          jdbc-url: jdbc:mysql://*******:3306/***?useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&serverTimezone=GMT%2b8
          username: *****
          password: ********

    原格式應該是這樣的:

    &serverTimezone=GMT+8 這里使用%2b替換 + 號

    2.直接在boot配置文件中增加jackson配置

    #在application.yml中增加配置
    spring:
        jackson:
            time-zone: GMT+8

    這樣就可以成功將時間修改成功了,還有其他方法,大家可以查閱哦

    springboot new Date()時區差8小時

    1 在k8s環境中,在代碼中比較時間。new Date() 下相差8小時

    檢查宿主機 時區是 cst時區

    用java代碼寫出controller時區發現是GMT

    代碼如下:

    Calendar calendar = Calendar.getInstance();      
            System.out.println("目前時間:" + calendar.getTime());
            System.out.println("Calendar時區::" + calendar.getTimeZone().getID());
            System.out.println("user.timezone:" + System.getProperty("user.timezone"));
            System.out.println("user.country:" + System.getProperty("user.country"));
            System.out.println("默認時區:" + TimeZone.getDefault().getID());

    輸出時區是 GMT 跟宿主機還不一樣,搞不定運維,自己搞把

    看來還是時區搞的鬼-

    1、數據庫鏈接db添加參數 serverTimezone=Asia/Shanghai

    2、springboot啟動腳本添加 -Duser.timezone=GMT+08

    3、jackson 全局配置

    spring.jackson.date-format: yyyy-MM-dd HH:mm:ss
    spring.jackson.time-zone: GMT+8

    4、jackson 注解

    @JsonFormat(timezone = “GMT+8”, pattern = “yyyy-MM-dd HH:mm:ss”)

    以上就是“springboot數據庫查詢時出現時區差異問題怎么解決”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    屏东市| 双城市| 林口县| 洪洞县| 武清区| 康平县| 青浦区| 泰安市| 漳浦县| 颍上县| 大洼县| 黔东| 富宁县| 德州市| 交口县| 横山县| 博爱县| 佛学| 赤壁市| 武宁县| 河津市| 苍梧县| 伊吾县| 泰顺县| 普宁市| 临夏市| 沧源| 洪泽县| 石城县| 利津县| 咸阳市| 乌什县| 福贡县| 库尔勒市| 东乡族自治县| 当阳市| 济源市| 伊春市| 右玉县| 富蕴县| 龙陵县|