mysql中om.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的区别有哪些
这篇文章将为大家详细讲解有关mysql中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
仓库地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java
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.Driverurl=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=falseusername=rootpassword=
2、JDBC连接Mysql6 com.mysql.cj.jdbc.Driver
, 需要指定时区serverTimezone:
driverClassName=com.mysql.cj.jdbc.Driverurl=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=falseusername=rootpassword=
在设定时区的时候,如果设定serverTimezone=UTC,会比中国时间早8个小时,如果在中国,可以选择Asia/Shanghai或者Asia/Hongkong,例如:
driverClassName=com.mysql.cj.jdbc.Driverurl=jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&useSSL=falseusername=rootpassword=
备注:
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
,就会报错:
Loadingclass'com.mysql.jdbc.Driver'.Thisisdeprecated.Thenewdriverclassis'com.mysql.cj.jdbc.Driver'.ThedriverisautomaticallyregisteredviatheSPIandmanualloadingofthedriverclassisgenerallyunnecessary.
此时需要把com.mysql.jdbc.Driver
改为com.mysql.cj.jdbc.Driver
II、还有一个警告:
WARN:EstablishingSSLconnectionwithoutserver’sidentityverificationisnotrecommended.AccordingtoMySQL5.5.45+,5.6.26+and5.7.6+requirementsSSLconnectionmustbeestablishedbydefaultifexplicitoptionisn’tset.ForcompliancewithexistingapplicationsnotusingSSLtheverifyServerCertificatepropertyissetto‘false’.YouneedeithertoexplicitlydisableSSLbysettinguseSSL=false,orsetuseSSL=trueandprovidetruststoreforservercertificateverification.
不推荐不使用服务器身份验证来建立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(安全套接层)
关于“mysql中om.mysql.jdbc.Driver和com.mysql.cj.jdbc.Driver的区别有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。