【问题标题】:"java.lang.ClassCastException: org.apache.derby.client.net.NetConnection cannot be cast to smartdatabase.Connection" anyone got any idea why?“java.lang.ClassCastException:org.apache.derby.client.net.NetConnection 不能转换为 smartdatabase.Connection”有人知道为什么吗?
【发布时间】:2020-08-31 18:41:20
【问题描述】:

我 100% 确定我的连接名称是正确的,“smartdatabase”是此代码所在的包,“SmartData”是我在 NetBeans IDE 8.2 中的嵌入式数据库(我相信它是一个 Derby 数据库)。

package smartdatabase;
import java.sql.*;
import org.apache.derby.jdbc.EmbeddedDriver;

public class Connection {

    private Connection conn = null;
    private Statement stmt = null;

    public Connection() {

    }

    public void getStudents() {
        try {
            Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
            conn = (Connection) 
DriverManager.getConnection("jdbc:derby://localhost:1527/SmartData;create=true;", "root", "The 
password");
        `    `String sql;
            sql = "SELECT Firstname, Surname FROM tblStudents";
            ResultS``et rs = stmt.executeQuery(sql);
            while (rs.next()) {
                String Firstname = rs.getString("FirstName");
                String Surname = rs.getString("Surname");
                System.out.println(Firstname + "    " + Surname);
            }
        } catch (SQLException se) {
            se.printStackTrace();
        } catch (`Exception e) {
            e.printStackTrace();
        }
    }

}

【问题讨论】:

    标签: java jdbc connection classcastexception


    【解决方案1】:

    您的smartdatabase 包中可能有一个名为Connection 的类。 使用此类代替java.sql.Connection 默认情况下,编译器从同一个包中解析Connection

    尝试重命名该类或使用完全限定名称 (java.sql.Connection) 而不仅仅是 Connection:

    private java.sql.Connection conn = null;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-09
      • 1970-01-01
      • 1970-01-01
      • 2011-01-13
      • 2020-08-04
      • 2014-02-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多