Java 没有找到适合jdbc的驱动程序:mariadb(Netbeans)

Java 没有找到适合jdbc的驱动程序:mariadb(Netbeans),java,jdbc,netbeans,mariadb,Java,Jdbc,Netbeans,Mariadb,我正在使用mariadb的mariadb-java-client-1.5.7.jar连接器,但它不起作用 以下是连接代码: public DataAccess() throws SQLException, ClassNotFoundException { this.driver = "org.mariadb.jdbc.Driver"; this.host = "jdbc:mariadb://localhost/bluebank"; this

我正在使用mariadb的
mariadb-java-client-1.5.7.jar
连接器,但它不起作用

以下是连接代码:

    public DataAccess() throws SQLException, ClassNotFoundException {
        this.driver = "org.mariadb.jdbc.Driver";
        this.host = "jdbc:mariadb://localhost/bluebank";
        this.user = "root";
        this.password = ""; 
        Class.forName(this.driver);
        this.conn = DriverManager.getConnection(this.host, this.user, this.password);
    }
我得到:

    java.sql.SQLException: No suitable driver found for jdbc:mariadb://localhost/bluebank
    at java.sql.DriverManager.getConnection(DriverManager.java:689)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at DAO.DataAccess.<init>(DataAccess.java:31)
java.sql.SQLException:找不到适合jdbc的驱动程序:mariadb://localhost/bluebank
位于java.sql.DriverManager.getConnection(DriverManager.java:689)
位于java.sql.DriverManager.getConnection(DriverManager.java:247)
DataAccess.(DataAccess.java:31)

除了将其作为外部jar添加到库中之外,我还将其作为驱动程序添加到Netbeans中的(服务)中的数据库中。另外,如果我删除了
类.forName()
,它也不起作用。

您忘记了数据库的端口号:

this.host = "jdbc:mariadb://localhost:port_number/bluebank";
确保数据库连接器jar存在于jar库中:

您可以在此处了解更多信息:


希望这能帮助你

今天也有类似的经历。在Eclipse中工作,不使用纯Java

对我来说,拥有

Class.forName ("org.mariadb.jdbc.Driver");

让它在任何地方都能工作。

您使用的是什么DBMS,MySql还是什么?看看这里:给出的答案是正确的。我错过了港口。我不知道他为什么要删除它。我是做这个的人,我认为这是另一个问题,因为我试图在“不工作”对我不起作用之前问一些问题。如果这是实际原因,我会非常惊讶,因为驱动程序默认为端口3306,而没有指定端口,请参阅这也清楚地表明端口是可选的mmm,我不知道@markrottveel我建议这个解决方案,事实上它和他一起工作,或者他有另一个端口?也许,或者他们的端口是一个无关的问题(过时的文件),编辑配置触发了重建或其他修复问题的方法OK@markrottveel,所以,你觉得我的答案没有用,也许OP可以与我们分享这是如何与他一起工作的:)我可以理解OP认为这解决了他的问题(这也是为什么我没有投反对票或其他任何东西),但是——忽略MariaDB连接器/J中可能存在的bug——这不可能是实际修复它的方法。