/* connection pool created with 5 connections based on the region specific.
with below code it will get connection from connection pool which is already created.*/
Connection con = DatasourceClient.getDataSourceMap.get(region).getConnection();
OracleConnection oConn = con.unwrap(oracle.jdbc.OracleConnection.class);
上面的代码将从池中获取两个连接,我需要关闭 con 和 Oconn 吗?
我遇到池耗尽和连接关闭异常,通过更改池属性尝试了多种方法。 所以只想知道上面的代码在做什么。
尝试关闭上述连接,但没有得到任何不同的结果。
使用Oracle Jdbc模板而不是spring jdbc,因为在我的程序中存在数组值,在少数情况下仅输入,在某些情况下仅输出,其他都是INOUT。
有人可以帮我解决这个问题吗?谢谢。
最佳答案
不,它只会输出一个连接,然后将其解包到它的实际类。
但是,您需要调用 con.close()
(而不是 oCon.close()
)将连接返回到池中。这是因为包装器的 close()
实际上并没有关闭连接,而是将其返回到池中。
关于java - 使用oracle jdbc模板在java中创建新的数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58297776/