Java-与 JDBC 集成 - 找不到适合 jdbc:mysql 错误的驱动程序

Java-Integration with JDBC - No suitable driver found for jdbc:mysql error

我对 Java 比较陌生。 需要使用 Java 和 JDBC。我目前尝试连接到我机器上的本地数据库。
这是训练的一部分,现在对我来说非常重要。 我正在使用 Java 8:

相应的培训和演示是使用 Java 7 完成的 附带练习的驱动是:mysql-connector-java-5.1.21-bin.jar 然而,我被推荐使用 Java 8 驱动程序,所以我从 https://dev.mysql.com/downloads/connector/j/[= 下载了 mysql-connector-java-8.0.29.jar(平台无关) 21=]

MySQL(本地数据库)如下所示: 主机名:127.0.0.1 用户:根 端口:3306

将 JDBC 连接字符串复制到剪贴板会带来以下内容:jdbc:mysql://127.0.0.1:3306/?user=root

驱动程序:mysql-connector-java-8.0.29.jar 已复制到项目文件夹“libs”并添加到构建路径:

我创建的以下代码(class main):

package com.lynda.javatraining.db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Main {
private static final String USERNAME = "root";
private static final String PASSWORD = "secret";

//private static final String CONN_STRING =
//"jdbc:mysql://localhost/explorecalifornia";

//private static final String CONN_STRING =
//"jdbc:mysql://127.0.0.1/explorecalifornia";

**//This is the string I use currently:** 
private static final String CONN_STRING =
"jdbc:mysql://127.0.0.1:3306/explorecalifornia";

//"jdbc:mysql://127.0.0.1:3306/?user=root/explorecalifornia";

  public static void main(String[] args) throws SQLException {

    Connection conn = null;
    try {
        conn = DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);
        System.out.println("Connected");
    } catch (SQLException e) {
        // TODO Auto-generated catch block
        //e.printStackTrace();
        System.err.println(e);
    }finally {
        if (conn != null) {
            conn.close();
        }
      } 
   }
}

当我 运行 我得到的代码时:java.sql.SQLException: 找不到适合 jdbc:mysql://127.0.0.1:3306/explorecalifornia

的驱动程序

我尝试了 CONN_STRING 的不同组合(请参阅上面代码中的所有注释),但仍然无法正常工作。我尝试了最初提供的驱动程序 (mysql-connector-java-5.1.21-bin.jar) 但没有成功(这是预期的)。有人可以给点建议吗

MySQL Connector/J 8 requires Java 8,当您尝试在 Java 7 上 运行 它时(如“JRE 系统库”所示[JavaSE-1.7]" 在您的 IDE 屏幕截图中)。将您的项目升级或切换到 Java 8(或更高版本),或者降级到较旧的 MySQL Connector/J 版本(例如 MySQL Connector/J 5.1.49,支持 Java 5 或更高版本)。

如果将 Class.forName("com.mysql.cj.jdbc.Driver") 添加到 main 方法的开头,您可能会得到一个 NoClassDefFoundError,原因是 UnsupportedClassVersionError.

对于错误的一般原因 "java.sql.SQLException:找不到适合 jdbc:mysql://..." 的驱动程序,另请参阅 Connect Java to a MySQL database