0

我知道这是一个老问题,但这里的情况不同。这似乎是 JAVA 10 或 MySQLConnector/J 8.0.12 jar 类的错误。

在我之前使用的 JAVA 8 和 MySQLConnector/J 5.1.39 上运行良好的相同项目(很多,而不仅仅是一个)现在在我更新系统后无法运行。

但该错误仅出现在 RowSet 中。使用明确使用的 DriverManager/Connection/ResultSet,它在相同的 url、url-parameters 和 MySQL 驱动程序下工作得很好。

我尝试过多地使用 Class.forName("")... 以及 url 参数的变体,但是当我使用 RowSet 时没有任何效果。同样的 java.sql.SQLException: No proper driver found for jdbc:mysql://localhost:3306/scheme1?verifyServerCertificate=false&useSSL=true 被一次又一次地抛出。

为什么相同的代码适用于 Java 8 而不是 Java 10?

try {
        RowSet rowSet = RowSetProvider.newFactory().createCachedRowSet();
        String url = "jdbc:mysql://localhost:3306/scheme1?verifyServerCertificate=false&useSSL=true";
        rowSet.setUrl(url);
        rowSet.setUsername("root");
        rowSet.setPassword("root");
        rowSet.setCommand("select * from client");
        rowSet.execute();
        while(rowSet.next()) {
            System.out.println(rowSet.getInt(1)+" "+rowSet.getString(2));
        }
    } catch (SQLException e) {
        e.printStackTrace();
    }enter image description here

(见有错误的图片)。

如果有人知道问题和解决方案,请提供帮助。我想继续使用 Java 10。

丹尼尔·皮涅罗

danielpm1982@gmail.com

在此处输入图像描述

在此处输入图像描述

4

1 回答 1

1

mysql-connector.jar 适用于 JAVA 8 您需要等到 MySQL 推出适用于 JAVA 10 的连接器或降级到 JAVA 8。

于 2018-08-23T18:59:52.733 回答