No suitable driver found for jdbc:mysql://localhost:3306/BookManagement-LMLPHP

目录

问题背景

解决办法


问题背景

今天遇见一个这个报错,解决后将解决方案分享一下:

报错内容如下:

“"C:\Program Files\Java\jdk1.8.0_221\bin\java.exe" "-javaagent:D:\IDEA2020_1\IntelliJ IDEA 2020.1\lib\idea_rt.jar=51910:D:\IDEA2020_1\IntelliJ IDEA 2020.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_221\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_221\jre\lib\rt.jar;D:\桌面\图书管理系统\out\production\图书管理系统" BookManagement java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/BookManagement at java.sql.DriverManager.getConnection(DriverManager.java:689) at java.sql.DriverManager.getConnection(DriverManager.java:247) at BookManagement.<init>(BookManagement.java:18) at BookManagement.main(BookManagement.java:56)”


解决办法

意味着你没有为 MySQL 数据库提供合适的 JDBC 驱动程序,或者没有正确地加载驱动程序。

为了解决这个问题,你需要采取以下步骤:

  1. 下载 MySQL JDBC 驱动程序

    你可以从 MySQL 官方网站下载 Connector/J,这是 MySQL 的 JDBC 驱动程序。

(这里直接在我的主页里我将下载好的资源放那了mysql-connector-java-8.0.11.jar)

  1. 将驱动程序添加到项目的类路径中

    下载完驱动程序后,你会得到一个 .jar 文件,例如 mysql-connector-java-8.0.xx.jar。你需要将这个 .jar 文件添加到你的项目的类路径中。

    由于你似乎在使用 IntelliJ IDEA,你可以这样做:

    • 打开你的项目。
    • 右键点击项目名称,选择 Open Module Settings
    • 在左侧选择 Libraries
    • 点击 +,然后选择你下载的 JDBC 驱动程序的 .jar 文件。
    • 点击 OK 保存设置。
  2. 在代码中加载驱动程序

    在你尝试连接数据库之前,确保你已经加载了驱动程序。你可以通过以下代码来实现:

Class.forName("com.mysql.cj.jdbc.Driver");
  1. 将上述代码添加到尝试连接数据库之前的位置。

你的代码应该类似于以下内容:

try {
    Class.forName("com.mysql.cj.jdbc.Driver");  // 加载驱动程序
    connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/BookManagement", "username", "password");
    // 其他代码...
} catch (ClassNotFoundException e) {
    e.printStackTrace();
    System.out.println("MySQL JDBC Driver not found.");
} catch (SQLException e) {
    e.printStackTrace();
}

注意:对于 MySQL Connector/J 8.0 及以上版本,驱动类是 com.mysql.cj.jdbc.Driver;对于 8.0 之前的版本,它是 com.mysql.jdbc.Driver

完成这些步骤后,重新运行你的程序,你应该可以成功连接到数据库。

 No suitable driver found for jdbc:mysql://localhost:3306/BookManagement-LMLPHP

🌌点击下方个人名片,交流会更方便哦~
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

09-14 09:43