JDBC连接MySQL Loading class `com.mysql.jdbc.Driver'. This is deprecated

今天使用JDBC连接数据库出现了问题

  

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.

查阅相关资料以后,发现是JDBC驱动包名引发的问题。之前看视频学习时,老师用的是5.x版本的jar包,我使用8.x版本的jar包报出了这个错误。

5.X版本的jar包对应的注册驱动语句为:

Class.forName("com.mysql.jdbc.Driver");

8.X版本的jar包对应的注册驱动语句为:

Class.forName("com.mysql.cj.jdbc.Driver");

(看出区别了吗?相比原来添加了一个.cj)

修改之后就可以运行了

贴一下样例代码:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

public class Demo01 {
    public static void main(String[] args) throws Exception {
        //1、注册驱动
        Class.forName("com.mysql.cj.jdbc.Driver");
        //2、获取数据库连接对象
        Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db10", "root", "123456");
        //3、获取执行sql语句
        Statement stat = conn.createStatement();
        //4、执行sql语句
        int i = stat.executeUpdate("insert into user values(1, 'tom', 18)");
        System.out.println(i);
        System.out.println("添加成功");
        //5、释放资源
        stat.close();
        conn.close();
    }
}

 

posted @ 2022-03-28 20:27  海边的查理  阅读(298)  评论(0编辑  收藏  举报