com.mysql.cj.jdbc.Driver和com.mysql.jdbc.Driver的區別


今天寫東西測試的時候發現一個問題,如下:

在這里插入圖片描述

application.yml中數據源是這樣配置的:

在這里插入圖片描述

第一反應就是記憶中連接mysql的驅動不都是com.mysql.jdbc.Driver嗎?com.mysql.cj.jdbc.Driver是什么鬼?

后來查看了一下才知道 這個跟驅動的依賴版本有關

   <dependency>
       <groupId>mysql</groupId>
       <artifactId>mysql-connector-java</artifactId
       <scope>runtime</scope>
   </dependency>
  • com.mysql.cj.jdbc.Driver是mysql-connector-java 6 中的特性,相比mysql-connector-java 5 多了一個時區:serverTimezone,把數據源配置的驅動改一下就好了

在這里插入圖片描述

這樣啟動就不會再報:Loading class com.mysql.jdbc.Driver'. This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

在這里插入圖片描述

  • 使用UTC會有8小時的時差(中國快全球標准8小時,比如:全球標准當前是上午1點,中國時間則為上午9點),可設置為北京時間東八區GMT%2B8 或者上海時間Asia/Shanghai。
總結:
  • com.mysql.jdbc.Driver和mysql-connector-java 5一起用。
  • com.mysql.cj.jdbc.Driver和mysql-connector-java 6 一起用。


免責聲明!

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



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