Eclipse java.sql.SQLException:未找到适合jdbc的驱动程序:mariadb://localhost:3306/mydatabase

Eclipse java.sql.SQLException:未找到适合jdbc的驱动程序:mariadb://localhost:3306/mydatabase,eclipse,servlets,java-8,mariadb,connector-j,Eclipse,Servlets,Java 8,Mariadb,Connector J,我的系统上运行了mariadb 10.4。db连接很好,我已经用根密码用db workbench进行了测试。 另一方面,我尝试从Java代码连接到它,我有以下例外: java.sql.SQLException: No suitable driver found for jdbc:mariadb://localhost:3306/mydatabase 我的java代码如下: import java.sql.Connection; import java.sql.DriverManager; im

我的系统上运行了mariadb 10.4。db连接很好,我已经用根密码用db workbench进行了测试。 另一方面,我尝试从Java代码连接到它,我有以下例外:

java.sql.SQLException: No suitable driver found for jdbc:mariadb://localhost:3306/mydatabase
我的java代码如下:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class CountryDAO {


    public void list() throws SQLException{
        String databaseURL = "jdbc:mariadb://localhost:3306/mydatabase";
        String user = "root";
        String password = "root";

        try 
        {
            Connection connection = DriverManager.getConnection(databaseURL, user, password);

        } catch (SQLException ex) {
            ex.printStackTrace();
            throw ex;
        }      


    }
}

我从servlet调用此代码。 我正在使用eclipse,并从构建路径添加了mariadb-java-client-2.4.2.jar作为外部jar。它应该能工作,但不能


更新:首先,我已经在一个新的EclipseJava项目中测试了我的代码,它工作得非常出色。其次,我尝试从另一个类的主方法调用相同的方法,db连接也可以完美地工作。所以我想我的问题是因为我从Servlet调用了这个连接。我不知道为什么会这样,但我有点被卡住了。您有什么建议吗?

您必须先加载驱动程序

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

你必须先加载驱动程序

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

事实上,它已经不需要了。这是传统的方式,检查我已经更新了我的问题,你还有其他想法吗?事实上,经过几次修改和测试,它与这个声明一起工作。但我昨天尝试过这个声明,它没有起作用。现在的问题是,如果我从另一个类调用这个方法,则不需要class.forName声明。我有点困惑。哇,它现在可以工作了,即使医生说它不需要了~~实际上,它已经不需要了。这是传统的方式,检查我已经更新了我的问题,你还有其他想法吗?事实上,经过几次修改和测试,它与这个声明一起工作。但我昨天尝试过这个声明,它没有起作用。现在的问题是,如果我从另一个类调用这个方法,则不需要class.forName声明。我有点困惑。哇,现在它工作了,即使医生说它不需要~~