SpringBoot+MyBatis+Mysql 6.X 版本日期型數據獲,時間錯亂,jason序列化時間相差8小時問題

新項目是用的springboot+mybatis+mysql 6.0.6版本的驅動包來搭建的,在使用的過程當中遇到如下2個問題mysql

  1. 從mysql取的的數據日期時間,與真實的時間日後錯亂了14個小時。spring

  2. springboot jason序例日期時發現與真實的時間向前推了8小時。sql

第一個問題:通過 查資料,發現是mysql 6.x以上版本的驅動包,鏈接字符串默認時區不是東八區致使,解決方案以下springboot

  在鏈接字符串上加上serverTimezone=Asia/Shanghai  問題獲得解決。mybatis

  經驗證mysql 5.x的版本不存在的這個問題,因此遇到這個問題的朋友,能夠選擇用上面的主案解決,也能夠用mysql 5.x的版本驅動包解決。app

第二個問題: 經調試發如今序列化前日期型的值是正確的,因此找到問題出在了序列化這一層面,這個問題算是spring boot 框架自己整合時的兼容的小BUG吧,解決方案以下框架

在application.properties 配置文件裏添序列化時區配置:spring.jackson.time-zone=GMT+8spa

相關文章
相關標籤/搜索