om.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的區別是什么

本篇文章給大家介紹一下om.mysql.jdbc.driver和com.mysql.cj.jdbc.driver的區別。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。

om.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的區別是什么

com.mysql.jdbc.Driver 是 mysql-connector-java 5中的,

com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6中的

下載地址:https://dev.mysql.com/downloads/connector/j/5.1.html

om.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的區別是什么

倉庫地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java

om.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的區別是什么

mysql-connector-java 5

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> ????<groupid>mysql</groupid> ????<artifactid>mysql-connector-java</artifactid> ????<version>5.1.49</version></dependency>

1、JDBC連接Mysql5 com.mysql.jdbc.Driver:

driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false username=root password=

2、JDBC連接Mysql6 com.mysql.cj.jdbc.Driver, 需要指定時區serverTimezone:

driverClassName=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&amp;useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false username=root password=

在設定時區的時候,如果設定serverTimezone=UTC,會比中國時間早8個小時,如果在中國,可以選擇Asia/Shanghai或者Asia/Hongkong,例如:

driverClassName=com.mysql.cj.jdbc.Driver url=jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&amp;useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false username=root password=

備注:

I、如果mysql-connector-java用的6.0以上的,如下:

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> ????<groupid>mysql</groupid> ????<artifactid>mysql-connector-java</artifactid> ????<version>6.0.6</version></dependency>

但是你的driver用的還是com.mysql.jdbc.Driver,就會報錯:

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.

此時需要把com.mysql.jdbc.Driver 改為com.mysql.cj.jdbc.Driver

II、還有一個警告:

WARN:?Establishing?SSL?connection?without?server’s?identity?verification?is?not?recommended.? According?to?MySQL?5.5.45+,?5.6.26+?and?5.7.6+?requirements?SSL?connection? must?be?established?by?default?if?explicit?option?isn’t?set.? For?compliance?with?existing?applications?not?using?SSL?the?verifyServerCertificate?Property?is?set?to?‘false’.? You?need?either?to?explicitly?disable?SSL?by?setting?useSSL=false,? or?set?useSSL=true?and?provide?truststore?for?server?certificate?verification.

不推薦不使用服務器身份驗證來建立SSL連接。

如果未明確設置,MySQL 5.5.45+, 5.6.26+ and 5.7.6+版本默認要求建立SSL連接。

為了符合當前不使用SSL連接的應用程序,verifyServerCertificate屬性設置為’false’。

如果你不需要使用SSL連接,你需要通過設置useSSL=false來顯式禁用SSL連接。

如果你需要用SSL連接,就要為服務器證書驗證提供信任庫,并設置useSSL=true。

SSL – Secure Sockets Layer(安全套接層)

推薦學習:php視頻教程

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享