使用 4 次后 OracleDataSource Connection 为空

标签 oracle datasource

我尝试多次使用 OracleDataSource 连接。在类中,我将 cacheProperty 设置为 10:

cacheProps.setProperty("MaxLimit", "10");

调用连接的类正在等待返回值,这样两个调用就不会同时进行。使用连接的类在类中的随机位置获取一个带有连接变量的空指针。它总是在第 5 个请求时发生。是否有一些我不知道的属性暗示您只能使用连接池 4 次?

这是出现空指针的代码片段:

int threadNo = 2;
Connection conn = OraConnODS.getConnection("env " + threadNo);
conn.setAutoCommit(false);
Statement stm = conn.createStatement();

通常在第二行,有时在第三行。

最佳答案

尝试这个查询来检查在 oracle 中实际打开了多少个连接

SELECT
  'Currently, ' 
  || (SELECT COUNT(*) FROM V$SESSION)
  || ' out of ' 
  || VP.VALUE 
  || ' connections are used.' AS USAGE_MESSAGE
FROM 
  V$PARAMETER VP
WHERE VP.NAME = 'sessions'

看看计数是否 > 10。如果 > 10,那么您需要发布完整的代码/xml 让我们看看。

关于使用 4 次后 OracleDataSource Connection 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17513929/

相关文章:

c# - ORA-01000 : maximum open cursors exceeded using oracle instant client and C#

spring - 如果我创建一个 Spring 数据源,我还需要在 Tomcat context.xml 中定义数据源吗?

grails - Grails查找安全的JNDI

oracle - 如何在oracle中选择昨天特定时间到今天特定时间之间的数据

linux - 如何在 shell 脚本中运行 SQL 查询时获得类似 SQLPLUS 的输出

python - 如何更改outputtypehandler中的datetime.date类型?

delphi - 相当于数据源的 'AutoInsert' 属性?

Grails 数据源在服务中变为空

java - EXT GWT 将所选项目绑定(bind)到新的空网格

oracle - 如何在 Windows 7 上安装 ora2pg?