亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

關于SpringBoot mysql數據庫時區問題

瀏覽:31日期:2023-03-06 08:36:12
尋找原因

后端開發中常見的幾個時區設置

第一個設置點配置文件 spring.jackson.time-zone

第二個設置點 高版本SpringBoot版本 mysql-connector-java 用的是8.X,mysql8.X的jdbc升級了,增加了時區(serverTimezone)屬性,并且不允許為空。

第三個設置點 mysql time_zone變量

詞義

serverTimezone臨時指定mysql服務器的時區

spring.jackson.time-zone 設置spring默認時區

system_time_zone mysql服務器時區 ,time_zone默認System追隨system_time_zone

幾種情況

1、time_zone 為 System,serverTimezone為GMT+8,jackson.time-zone未定義

關于SpringBoot mysql數據庫時區問題

插入情況

關于SpringBoot mysql數據庫時區問題

關于SpringBoot mysql數據庫時區問題

關于SpringBoot mysql數據庫時區問題

再查詢此條記錄

關于SpringBoot mysql數據庫時區問題

個人覺得Spring默認時區為格林尼治時區,web服務器當前時區為東八區,進行加8操作。

2、set GLOBAL time_zone = ’+3:00’,serverTimezone為GMT+8,jackson.time-zone為GMT+8

createTime 為 timestamp類型

關于SpringBoot mysql數據庫時區問題

修改配置后,需要重啟SpringBoot

新增情況

關于SpringBoot mysql數據庫時區問題

數據庫中顯示

關于SpringBoot mysql數據庫時區問題

查詢記錄

關于SpringBoot mysql數據庫時區問題

個人理解,serverTimezone設置覆蓋掉了mysql的time_zone變量,跟SpringBoot回話時區還是東8

3、上述環境,不重啟SpringBoot,直接改變time_zone = ’+5:00’

改變后,上條記錄往后調整2小時。

關于SpringBoot mysql數據庫時區問題

SpringBoot查詢,一樣

關于SpringBoot mysql數據庫時區問題

說明,timeStamp類型存儲的是格林尼治時間,加上time_zone時區

當time_zone變化時,回話沒結束,serverTimeZone東8還是對應time_zone的東3

SpringBoot插入

關于SpringBoot mysql數據庫時區問題

關于SpringBoot mysql數據庫時區問題

個人理解,serverTimeZone東8 還是和 time_zone 東3對應,但是插入發現 當前time_zone已經改成東5,就加2小時。

重啟SpringBoot,重新查詢

關于SpringBoot mysql數據庫時區問題

關于SpringBoot mysql數據庫時區問題

雖然,mysql變量time_zone為+5,但是重啟后,serverTimeZone直接覆蓋,設置時間區間為東8

重新把time_zone改回東3

關于SpringBoot mysql數據庫時區問題

改回重新打開表,發現又回來了

不啟動SpringBoot,查詢數據,還是老樣子

關于SpringBoot mysql數據庫時區問題

此時,添加一條數據。

關于SpringBoot mysql數據庫時區問題

往前推了2小時。

關于SpringBoot mysql數據庫時區問題

SpringBoot查詢

關于SpringBoot mysql數據庫時區問題

重啟SpringBoot,查出來就是庫中數據。

關于SpringBoot mysql數據庫時區問題

總結:

1、timeStamp類型存儲時間數據,當time_zone和serverTimeZone不統一情況,會話中,表中時間數據,按照serverTimeZone設定

2、如果過程中,修改了time_zone變量,庫中數據直接變更。但是不影響當前會話查詢,新增數據,就會根據time_zone調整量,調整實際入庫。

3、SpringBoot重啟,其實就是新會話。情況同上。

4、時間字段類型為datetime,serverTimezone為GMT+8,jackson.time-zone為GMT+8,time_zone為東3

插入

關于SpringBoot mysql數據庫時區問題

庫中

關于SpringBoot mysql數據庫時區問題

查詢

關于SpringBoot mysql數據庫時區問題

time_zone從東3修改為東5

重新打開庫

關于SpringBoot mysql數據庫時區問題

不啟動SpringBoot

關于SpringBoot mysql數據庫時區問題

重啟SpringBoot,還是一樣。

修改serverTimeZone為GMT,其他不改動

關于SpringBoot mysql數據庫時區問題

關于SpringBoot mysql數據庫時區問題

查詢

關于SpringBoot mysql數據庫時區問題

總結:如果是datetime類型,serverTimeZone說了算。

以上就是關于SpringBoot mysql數據庫時區問題的詳細內容,更多關于SpringBoot mysql時區的資料請關注好吧啦網其它相關文章!

標簽: Spring
相關文章:
主站蜘蛛池模板: 国产在线精品福利一区二区三区 | 久久国产精品免费专区 | 99超级碰碰成人香蕉网 | 黄站无毒不卡秒播网站免费观看 | 国产精品亚洲片夜色在线 | 日韩精品中文字幕在线 | 黄片毛片一级片 | 精品无人区乱码一区二区三区手机 | 欧美黑人特大巨黑吊 | 青青草97国产精品免费观看 | 99热99re8国产在线播放 | 上海一级毛片 | 国产精品久久二区三区色裕 | 成人免费看黄网址 | 久久99亚洲精品一区二区 | 成人国产精品久久久免费 | 国产精品99久久久 | 久久精品最新免费国产成人 | 91在线入口 | 黄色欧美大片 | 国内外成人免费视频 | 久久5| 久久国产成人精品麻豆 | 可以直接看的黄色网址 | 我要看黄色一级大片 | 久久这里只有精品66re99 | 亚洲国产欧美日韩 | 免费一级毛片无毒不卡 | 三级福利片 | 国产亚洲蜜芽精品久久 | 成年人网站在线观看视频 | 在线免费观看黄色片 | 国产精品7m凸凹视频分类大全 | 久久精品网站免费观看 | 成人免费淫片在线费观看 | 中日黄色大片 | 国产精品v在线播放观看 | 国产精品久久在线 | 亚洲精品色一区色二区色三区 | 一级一级女人18毛片 | ntr中文字幕亚洲综合 |