精华内容
下载资源
问答
  • com.mysql.jdbc.Driver 是 mysql-connector-java...com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6中的1,JDBC连接Mysql5 com.mysql.jdbc.Driver:driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql://localho

    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.Driver
    url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&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&useUnicode=true&characterEncoding=utf8&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&useUnicode=true&characterEncoding=utf8&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(安全套接层)

    展开全文
  • com.mysql.cj.jdbc.Driver和com.mysql.jdbc.Driver的区别

    万次阅读 多人点赞 2019-05-23 20:50:50
    第一反应就是记忆中连接mysql的驱动不都是com.mysql.jdbc.Driver吗?com.mysql.cj.jdbc.Driver是什么鬼? 后来查看了一下才知道 这个跟驱动的依赖版本有关 <dependency> <groupId>mysql</grou...

    今天写东西测试的时候发现一个问题,如下:
    在这里插入图片描述
    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 iscom.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 一起用。
    展开全文
  • com.mysql.jdbc.Driver 是 mysql-connector-java 5中的, com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6中的 1、JDBC连接Mysql5 com.mysql.jdbc.Driver: driverClassName=com.mysql.jdbc.Driver url=...

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

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

    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&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&?useUnicode=true&characterEncoding=utf8&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=Shanghai&?useUnicode=true&characterEncoding=utf8&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(安全套接层)

    MySql驱动8.0.11版本的一些使用注意事项

    1>解决java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents more than one time zone.

    添加格式:

    ?serverTimezone=GMT%2B8;

    使用的数据库是MySQL,驱动是8.0.11,这是由于数据库和系统时区差异所造成的,在jdbc连接的url后面加上serverTimezone=GMT即可解决问题,如果需要使用gmt+8时区,需要写成GMT%2B8,否则会被解析为空。再一个解决办法就是使用低版本的MySQL jdbc驱动,5.1.28不会存在时区的问题。

    2>解决:Fri May 18 15:00:19 CST 2018 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.

    在后面加入:useSSL=false

    3>解决: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.

    不能这样 driverClass="com.mysql.jdbc.Driver" 写了,应该修改成 driverClass="com.mysql.cj.jdbc.Driver"

     

    最终如下:

    
            <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
    			connectionURL="jdbc:mysql://localhost:3306/springmvc?serverTimezone=GMT%2B8&useSSL=false" 
    			userId="root" password="root">
    	</jdbcConnection>

    还有一些其他的可能未总结到

    参考资料:

    https://blog.csdn.net/m0_37520980/article/details/80364884

    https://blog.csdn.net/superdangbo/article/details/78732700

     

    展开全文
  • 大家在连接mysql的时候,启动项目,会警告你推荐使用com.mysql.cj.jdbc.Driver而不是com.mysql.jdbc.Driver 那么这两者到底有什么区别呢 本质区别: com.mysql.jdbc.Driver是 mysql-connector-java 5中的, ...

    大家在连接mysql的时候,启动项目,会警告你推荐使用com.mysql.cj.jdbc.Driver 而不是com.mysql.jdbc.Driver 

    那么这两者到底有什么区别呢

    本质区别:

    com.mysql.jdbc.Driver 是 mysql-connector-java 5中的, 
    com.mysql.cj.jdbc.Driver 是 mysql-connector-java 6以及以上中的

    在使用com.mysql.jdbc.Driver时,配置是需要下面这样的:

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

    在使用com.mysql.cj.jdbc.Driver时,则是需要下面这样的配置的:

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

    注意:

    需要指定时区(serverTimezone=UTC)和 使用SSL (useSSL=false)

    另外还需注意:

    在设定时区的时候,如果设定serverTimezone=UTC,会比中国时间早8个小时,如果在中国,可以选择Asia/Shanghai或者Asia/Hongkong,像下面这样配置:

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

    情况分析:

    如果你maven使用的是6版本以及以上版本的mysql驱动:

            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>8.0.16</version>
            </dependency>

    这是使用的是8.0.16版本的Mysql驱动,那么会报一下的错误:

    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'。
    驱动程序通过SPI自动注册
    并且通常不需要手动加载驱动程序类。

    这时候你就要把com.mysql.jdbc.Driver 改为 com.mysql.cj.jdbc.Driver

    但是你改完之后还是会报错:

    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+和5.7.6+要求SSL连接
    如果未设置显式选项,则必须默认建立。
    为了符合不使用SSL的现有应用程序,verifyServerCertificate属性设置为“false”。
    您需要通过设置useSSL = false显式禁用SSL,
    或者设置useSSL = true并为服务器证书验证提供信任库。

    这个时候如果不需要SSL验证,就在url后面加useSSL=false

    这个时候就不会报警告了.

    使用mysql  8.0.16 版本的驱动的时候解决如下报错:

    java.sql.SQLException: The server time zone value '???ú±ê×??±??' is unrecognized or represents more than one time zone.

    这是由于数据库和系统时区差异所造成的,在jdbc连接的url后面加上serverTimezone=GMT即可解决问题,如果需要使用gmt+8时区,需要写成GMT%2B8否则会被解析为空

    再一个解决办法就是使用低版本的MySQL jdbc驱动,5.1.28不会存在时区的问题。

     

    展开全文
  • 一、 com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver介绍 1.MySQL Connector / J介绍 MySQL通过MySQL Connector / J为使用Java编程语言开发的客户端应用程序提供连接。Connector / J实现了 Java数据库连接...
  • com.mysql.jdbc.Driver 是mybatis-connection-java 5 及 5 以下的 com.mysql.cj.jdbc.Driver是mybatis-connection-Java 6 及以上的 mybatis-connection-java 5 及 5 以下的jdbc的配置方式: driverClassName=...
  • 1. 在使用mysql时控制台日志报错如下: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 ...
  • 概述:com.mysql.jdbc.Driver是mysql-connector-java 5中的,而com.mysql.cj.jdbc.Driver是...1、JDBC连接Mysql5需用com.mysql.jdbc.Driver,例如:driverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://loca...
  • 当前的项目用的是springboot2.1.6,之前一直是拿一个模板改来改去,今天新建了个项目发现...Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. ...
  • com.mysql.cj.jdbc.driver'的配置连接如下: jdbc.driver=com.mysql.cj.jdbc.Driver jdbc.url=jdbc:mysql://192.168.1.99:3306/root?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC&use...
  • JDBC中com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver的区别

    万次阅读 多人点赞 2019-01-21 10:49:39
    最近重装了系统,随后在官网下载了最新版本的MySQL8.0.13和相应的mysql-connector-java...driverClassName=com.mysql.jdbc.Driver url=jdbc:mysql:///db1?useUnicode=true&amp;characterEncoding=utf8&amp;u...
  • Loading class `com.mysql.jdbc.Driver’. This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver 其实这个就是你的MySQL数据库的驱动太高了。 解决方案,在你的程序中找到你加载MySQL驱动的那一条...
  • 老版本com.mysql.jdbc.Driver已弃用 String url1 = "jabc:mysql://127.0.0.1:3306/test"; String url1 = "jabc:mysql://localhost:3306/test"; 新版用com.mysql.cj.jdbc.Driver UTC:全球时间 Asia/Shanghai:...
  • 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...
  • com.mysql.jdbc.Driver驱动是mysql-connector-java 5中的 com.mysql.cj.jdbc.Driver驱动是mysql-connector-java 6以上版本的 1、JDBC连接Mysql5 com.mysql.jdbc.Driver driverClassName=com.mysql.jdbc.Driver ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,738
精华内容 7,495
关键字:

com.mysql.jdbc.driver

mysql 订阅