OracleConnection不推荐使用的方法问题

时间:2019-04-01 07:49:21

标签: java oracle oracle11g ucp

我正在升级使用连接池的类。尤其是界面:

oracle.jdbc.OracleConnection

现在,此接口有许多不推荐使用的方法。我只是想知道此接口是否还有其他替代方法,所以我将无法正常使用:

The type XXXX must implement the inherited abstract method OracleConnection.getJavaObject(String)

等等。以前,使用SupressWarning批注对代码进行检查。我不喜欢有什么办法解决这个问题?还是注释是唯一的方法?

我的maven依赖导入就像这样,如果有帮助的话:

<!-- https://mvnrepository.com/artifact/com.oracle/ojdbc6 -->
        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc6</artifactId>
            <version>11.2.0.4</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/com.oracle/ucp -->
        <dependency>
            <groupId>com.oracle.jdbc</groupId>
            <artifactId>ucp</artifactId>
            <version>12.2.0.1</version>
        </dependency>

添加代码(该类仅覆盖OracleConnection接口上的所有方法),我可以肯定它的使用率并不高,但是由于它的代码很旧,所以不能确定地说。

@SuppressWarnings("deprecation")
public class APPDBConnection implements OracleConnection {

    private OracleConnection connection;

    public APPDBConnection (OracleConnection connection) {
        super();
        this.connection = connection;
    }

    @Override
    public <T> T unwrap(Class<T> iface) throws SQLException {
        return connection.unwrap(iface);
    }

    @Override
    public boolean isWrapperFor(Class<?> iface) throws SQLException {
        return connection.isWrapperFor(iface);
    }

    @Override
    public void clearWarnings() throws SQLException {
        connection.clearWarnings();
    }
.
.
.
.

1 个答案:

答案 0 :(得分:1)

我所知道的OracleConnection之外别无选择,尤其是对于Oracle 11g。

确定要绝对了解OracleConnection吗?
您基本上是将实现与特定的提供者联系在一起。

OracleConnection提供了哪些方法,您有效地使用了这些方法?
考虑针对java.sql.Connection接口进行编程。


public class APPDBConnection implements Connection {
    private final Connection connection;

    public APPDBConnection(final Connection connection) {
        this.connection = connection;
    }

只需传递一个已经构造好的OracleConnection
在那之后,您将不再了解它,接口的目的是在哪个恕我直言。