有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java将JDBC与Firebirdsql连接起来

我在连接firebirdsql时遇到问题。 这是我的密码

 try {

        Class.forName("org.firebirdsql.jdbc.FBDriver");
        Connection con= DriverManager.getConnection("jdbc:firebirdsql:localhost/3050:C:\\EMPLOYEE.FDB","sysdba","masterkey");
        Statement stm= con.createStatement();
        ResultSet res= stm.executeQuery("SELECT * FROM Emp");
        while (res.next()) {
            System.out.println("EMPLOYEE NAME:"
                    + res.getString("NAME"));
        }
    } catch (Exception e) {
        System.out.println(e);
    } 

得到一个像这样的错误

爪哇。lang.ClassNotFoundException:org。firebirdsql。jdbc。FBD驱动器


共 (1) 个答案

  1. # 1 楼答案

    java.lang.ClassNotFoundException: org.firebirdsql.jdbc.FBDriver表示类路径上没有Jaybird(Firebird JDBC驱动程序),因为Java无法加载驱动程序类

    您可以从https://www.firebirdsql.org/en/jdbc-driver/下载Jaybird

    运行应用程序时,需要确保jaybird-full-2.2.12.jar(或jaybird-2.2.12.jarlib/connector-api-1.5.jar)在类路径上

    这意味着您要么需要将其包含在清单中,要么需要在运行Java时显式指定它:

    java -cp .;jaybird-full-2.2.12.jar MyClass
    

    或者,如果使用Maven,可以使用以下方法包含依赖项:

    <dependency>
        <groupId>org.firebirdsql.jdbc</groupId>
        <artifactId>jaybird-jdk18</artifactId>
        <version>2.2.12</version>
    </dependency>
    

    另见Jaybird JDBC Driver Java Programmer's Manual,特别是第2章

    jaybird2.2及更高版本不需要使用Class.forName("org.firebirdsql.jdbc.FBDriver");