Java cast oracleconnection eclipse
请告诉我是否需要提供更多信息/代码,因为我是java新手,可能不知道您需要哪些信息 我必须向现有的EclipseRCP应用程序添加一个功能。在这种情况下,我需要将OracleDatabaseChangeListNet注册到我的数据库连接 问题是,连接已经存在,并且属于自行设计的类连接。连接的设计方式是,可以连接到除Oracle之外的其他数据库,实现自行设计的接口IConnection,但基本上这种连接是到Oracle 11g数据库的 因此,我需要将此连接强制转换为OracleConnection,但得到一个CastExceptionError。我如何才能设法建立连接Java cast oracleconnection eclipse,java,eclipse,oracle,casting,database-connection,Java,Eclipse,Oracle,Casting,Database Connection,请告诉我是否需要提供更多信息/代码,因为我是java新手,可能不知道您需要哪些信息 我必须向现有的EclipseRCP应用程序添加一个功能。在这种情况下,我需要将OracleDatabaseChangeListNet注册到我的数据库连接 问题是,连接已经存在,并且属于自行设计的类连接。连接的设计方式是,可以连接到除Oracle之外的其他数据库,实现自行设计的接口IConnection,但基本上这种连接是到Oracle 11g数据库的 因此,我需要将此连接强制转换为OracleConnection
public void openConnection( IConnection connection) throws JeffException {
URI conURI = connection.getUri();
String con_System = conURI.getPath().split( "/")[1]; //$NON-NLS-1$
String jdbcUrl = "jdbc:oracle:thin:@//" + conURI.getHost() + ":" + conURI.getPort() + "/" + con_System; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
String Jeff_user = connection.getProperty( DatabaseConstants.JEFF_USERNAME);
String Jeff_password = connection.getProperty( DatabaseConstants.JEFF_PASSWORD);
//derby-embedded
// jdbcUrl="jdbc:derby:embeddedDB1;create=true";
String Jeff_proxy_password = connection.getProperty( DatabaseConstants.JEFF_PROXY_PASSWORD);
String Jeff_proxy_username = connection.getProperty( DatabaseConstants.JEFF_PROXY_USERNAME);
OracleConnection conn=(OracleConnection) connection;
我得到的错误是
java.lang.ClassCastException: mapackage.projectmanager.model.Connection cannot be cast to oracle.jdbc.OracleConnection
谢谢,
杰夫这种设计对我来说毫无意义。与java.sql.Connection相比,您自行设计的iConnect提供了哪些改进?这是JDBC驱动程序必须了解的唯一接口。这不是我的设计,如上所述,我必须扩展现有的应用程序,它在一开始就是这样设计的。如果我不得不重新设计它,特别是作为一个新手,那对我来说太多额外的工作了,所以如果可能的话,我想让它这样,简单地把它与OracleConenction连接起来。我应该发布连接类的代码吗?