gpt4 book ai didi

java - OracleConnection 不推荐使用的方法问题

转载 作者:行者123 更新时间:2023-12-02 10:03:46 35 4
gpt4 key购买 nike

我正在升级一个使用连接池的类。特别是界面:

oracle.jdbc.OracleConnection

现在这个接口(interface)有很多方法已经被弃用了。我只是想知道这个界面是否还有其他替代方案,这样我就不会得到通常的结果:

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 接口(interface)中的所有方法),我很确定它没有被太多使用,但由于它是旧代码,所以不能确定。

@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();
}
.
.
.
.

最佳答案

据我所知,没有可以替代 OracleConnection 的方法,特别是对于 Oracle 11g。

您确定您绝对需要了解OracleConnection吗?
您基本上将您的实现与特定的提供商联系起来。

您正在有效地使用OracleConnection提供的哪些方法?
考虑针对 java.sql.Connection 接口(interface)进行编程。

<小时/>
public class APPDBConnection implements Connection {
private final Connection connection;

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

只需传入一个已经构造的 OracleConnection
在那之后,您将不再了解它,恕我直言,这就是接口(interface)的目标。

关于java - OracleConnection 不推荐使用的方法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55450291/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com