java.lang.ClassCastException错误
嗨,我正在用Eclipse练习Java oracle数据库连接 下面是我的代码:java.lang.ClassCastException错误,java,oracle,jdbc,Java,Oracle,Jdbc,嗨,我正在用Eclipse练习Java oracle数据库连接 下面是我的代码: package connection; import java.sql.* ; // for standard JDBC programs import java.math.* ; // public class Connection { public static void main(String[] args) throws SQLException { try {
package connection;
import java.sql.* ; // for standard JDBC programs
import java.math.* ; //
public class Connection {
public static void main(String[] args) throws SQLException {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(ClassNotFoundException ex) {
System.out.println("Error: unable to load driver class!");
System.exit(1);
}
String URL = "jdbc:oracle:thin:C##AVIVI/avivi9694@localhost:1521:oracleavivi";
Connection conn = (Connection) DriverManager.getConnection(URL);
以下是“错误”:
我将“jre7”-“lib”文件夹中的所有“jar”文件导入到我的项目中(我是新手,所以不太确定我需要哪个jar,所以我将它们全部导入,不知道这是否会影响连接)
连接
不明确(对于您,而不是编译器),因为这是主类的名称:
重命名类或使用完全限定的类接口名称:
java.sql.Connection conn = DriverManager.getConnection(URL);
将类重命名为例如MyFirstOracleTest(在eclipse中通过重构->重命名完成)不需要强制转换本身;
DriverManager
已经返回java.sql.Connection
@Mark谢谢你指出这一点。我让强制转换输入我的原始答案,因为它已经存在于OP的代码中。但是你是对的,这没有用。我删除了它。
Connection conn = (Connection) DriverManager.getConnection(URL);
//^^^^^^^^ ^^^^^^^^^^
// connection.Connection, not java.sql.Connection
java.sql.Connection conn = DriverManager.getConnection(URL);