Java:数据库连接的代码有问题
我想编译这个Java代码。这样我就可以连接到本地Oracle数据库。 但是我的代码不能正常工作。它失败于:Java:数据库连接的代码有问题,java,oracle,jdbc,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
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;
}
}
使用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;
}
驱动程序的类路径应为oracle.jdbc.OracleDriver(),而您将其编写为oracle.jdbc.Driver.OracleDriver()所需代码如下:
Class.forName("oracle.jdbc.driver.OracleDriver");
connect = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","scott","tiger");
注意,类路径中需要Oracle JDBC驱动程序。您可以下载与您的Oracle版本对应的驱动程序,例如check
下载后,您可以执行以下三项操作之一:
set classpath=%classpath%;。;驱动程序jar文件的路径
错误消息到底是什么?按照@ShivamPuri的建议,从应用程序日志中添加错误的stacktrace。我已将thje值更改为Driver myDriver=oracle.jdbc.OracleDriver();但问题是一样的。我已经更改了我的代码类.forName(“oracle.jdbc.driver.OracleDriver”);这就解决了我的薪酬问题。但是当我执行我的程序时,我得到了错误java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriverAd在JAR下面到你的类路径。您好,我必须在eclipse中为我的项目添加ojdbc8.jar。现在我可以连接到我的数据库了。非常感谢。我已经下载了该文件并将其放到C:\jre\lib\ext。然后创建了一个新的环境变量CLASSPATH,其值为C:\jre\lib\ext。但我的问题仍然是,我收到了相同的错误消息。当我执行java代码Hello时,我必须在exclipse中添加jar文件。之后我得到了java.sql.SQLException:ORA-28040:No匹配的身份验证协议Hello我不得不在eclipse中为我的项目添加ojdbc8.jar。现在我可以连接到我的数据库了。谢谢大家!@user12467638-我希望解决方案对您有效。不要忘记接受答案,这样将来的访问者也可以自信地使用解决方案。检查以了解如何做。如有任何疑问/问题,请随时发表评论。