Java:数据库连接代码出现问题

时间:2020-01-16 11:35:12

标签: java oracle jdbc

我想编译此Java代码。因此我可以将自己连接到本地Oracle数据库。 但是我的代码无法正确运行。它在以下位置失败:

Driver myDriver = new oracle.jdbc.driver.OracleDriver();

您能告诉我如何替换这行吗?

package DB_Oracle_Connection;

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

public class dbconf {

private String connstr;
private Connection connect;
public Connection getConnection() throws SQLException {
        connstr = "jdbc:oracle:thin:@localhost:1521:orcl";

        try {
                String uname = "scott";
                String pass = "tiger";

                Driver myDriver = new oracle.jdbc.driver.OracleDriver();
                DriverManager.registerDriver( myDriver );                  


                connect = DriverManager.getConnection(connstr, uname, pass);

        } catch (Exception e) {
            System.out.println(e.toString());
        }

            return connect;
    }
}

3 个答案:

答案 0 :(得分:1)

驱动程序的类路径应为oracle.jdbc.OracleDriver(),而您将其编写为oracle.jdbc.driver.OracleDriver()

答案 1 :(得分:0)

使用Class.forName加载驱动程序。 请参见下面的代码。

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

public class Dbconf {

    private String connstr;
    private Connection connect;

    public Connection getConnection() throws SQLException {
        connstr = "jdbc:oracle:thin:@localhost:1521:orcl";

        try {
            String uname = "scott";
            String pass = "tiger";

            Class.forName("oracle.jdbc.driver.OracleDriver");

            connect = DriverManager.getConnection(connstr, uname, pass);

        } catch (Exception e) {
            System.out.println(e.toString());
        }

        return connect;
    }

答案 2 :(得分:0)

所需的代码如下:

Class.forName("oracle.jdbc.driver.OracleDriver"); 
connect = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","tiger");

请注意,您需要在类路径中使用Oracle JDBC驱动程序。您可以下载与您的Oracle版本相对应的驱动程序,例如检查https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html

下载后,您可以执行以下三个操作之一:

  1. 将其放在jre / lib / ext文件夹中
  2. 如果您的系统中没有名为CLASSPATH的环境变量,请创建一个环境变量并将驱动程序的路径(jar文件)添加到CLASSPATH中。
  3. 如果您从命令提示符处运行程序,则可以使用命令set classpath=%classpath%;.;path-of-the-driver-jar-file
  4. 将驱动程序设置为类路径。