为什么我无法将 MySQL 数据库连接到简单 Java 程序?使用所有软件的更新版本

Why I can't connect MySQL database to Simple Java program ? Using updated versions of all softwares

我收到此错误 - java.lang.ClassNotFoundException:com.mysql.jdbc.Driver。 我正在使用 Notepad++ 进行编码,并使用 命令提示符 来执行该程序。没有IDE.

我已经安装了最新版本的 MySQL、Java SE、Java Connector。我已将 CLASSPATH 变量正确设置为 mysql-connector-java-8.0.20.jar 文件。您可以检查下图中的 CLASSPATH [1]: https://i.stack.imgur.com/9XgQp.jpg

我的代码也是正确的我把我的代码和输出放在下面。 // MYSQL 和 java 的数据库程序。记事本中的简单连接。

import java.sql.*;
public class Db01
{
    public static void main(String args[])
    {
        try {
        System.out.println("Start of program");
        Class.forName("com.mysql.jdbc.Driver");
        Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/student","root","root"); 
        Statement stmt=con.createStatement();  
        ResultSet rs=stmt.executeQuery("select * from studenttable");
        while(rs.next())  
        System.out.println(rs.getInt(1)+"  "+rs.getString(2)+"  "+rs.getString(3));  
        con.close();  
        }catch(Exception E)
        {
            System.out.println(E);
            System.out.println("Program end with cought exception");
        }
    }
}

这是我的输出。 节目开始

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

程序以咳嗽异常结束

我尝试了大多数文档和论坛,但找不到答案请帮助我。

我找到了答案。这是驱动程序不兼容的问题。我已经阅读了 MYSQL 官方网站的文档。它解释了这一点。 JDBC Pure Java Drivers 有两个系列,作者是 MYSQL。

1.Connector J 8. Series - 这个驱动程序增加了很多额外的功能,但大多数时候它不能在小的基本程序上工作。需要安装核心驱动5.0

2.Connector J 5. 系列 - 这看起来像最兼容的驱动程序系列。您需要安装其原始驱动程序。因此,如果检查您是否使用了正确的驱动程序。

默认情况下,您的 5.0 驱动程序将出现在 C:\Program Files (x86)\MySQL\Connector J 5.1\mysql-connector-java-5.1.48.jar 中。创建 CLASSPATH 变量,为该驱动程序和程序的 .class 文件提供位置。现在可以使用了。

编辑:我之前说过 J7 驱动程序是 J5 驱动程序的附加组件。我错了,有人在评论中纠正我。所以我重新编辑了这个post。我不能保证我上面描述的答案是真实的,因为我正在学习自己。我只是想说说我是如何得到解决方案的。