这几天准备项目上线前发现问题,ORA-01000 maximum open cursors exceeded 而且好几个功能出现类似问题
在网上也查了资料,都说是游标越界了 建议增大游标,后来架构师检查了下代码,原来是preparedStatement没有关闭,汗!
Session hibernateSession = (Session) Component.getInstance("hibernateSession");
String hql = "select current_timestamp from dual";
Connection conn = hibernateSession.connection();
try {
PreparedStatement pstmt = conn.prepareStatement(hql);
ResultSet rs = pstmt.executeQuery();
if (rs.next()) {
Timestamp time = rs.getTimestamp("current_timestamp");
return time;
}
} catch (SQLException e) {
}
return new Timestamp(System.currentTimeMillis());
此方法没有关闭 pstmt 、rs、conn
使用了框架之后,此类问题很难发现,同时也是非常低级的问题 以后一定要注意,手动取得连接、创建PreparedStatement 获得
ResultSet 记得一定关闭资源!
发表评论
-
[转:]jQuery焦点中国地图
2013-04-17 11:05 1694转自:http://xiaoyaosr.blog.51cto ... -
一个轻量级的网页遮罩层jQuery插件
2012-11-14 17:48 6375一个轻量级的网页遮罩层jQuery插件 分 ... -
通过Spring Mail Api发送邮件
2012-11-14 17:47 1446通过Spring Mail Api发送邮件 ... -
jquery.validate
2012-11-09 16:51 1079jquery.validate 需要JQuery ... -
Hibernate commit() 和flush() 的区别(转)
2012-09-28 09:46 2639Hibernate commit() 和flush( ... -
maven3.0.2下settings.xml配置下(转)
2012-09-25 19:14 5946maven3.0.2下settings.xml配置下 ... -
hibernate中Qurey类的setDate方法自动截掉时分秒——setDate和setTimeStamp(转)
2012-09-03 10:30 3089原帖地址:http://www.iteye.com/to ... -
Maven3.0.3的环境变量配置
2012-07-19 11:22 3039转自http://hi.baidu.com/douxinchu ... -
转:org.apache.catalina.core.JreMemoryLeakPreventionListener解决办法
2012-07-18 15:38 5530转自:http://blog.csdn.net/ang ... -
eclipse中的java文件图标j成空心
2012-07-06 10:06 13560eclipse中的java文件图标j成空心 ... -
jQuery - Ajax - readyState获取请求操作的当前状态
2012-06-29 14:46 0jQuery - Ajax - readyState获取请求 ... -
Dom加载判断,兼容所有浏览器
2012-06-29 14:35 9223Dom加载判断,兼容所有浏览器 Dom 加载完毕,兼容 ... -
document.readyState几种状态及示例
2012-06-29 14:33 2013document.readySta ... -
DOM Ready 详解
2012-06-29 14:03 3097转自:http://www.cnblogs.com/zhang ... -
转】js实现另存为的方法
2012-06-29 13:42 2922转】js实现另存为的方法 本文转自http://www ... -
js添加和去除千分号
2012-06-22 11:41 2136利用js的replace方法和正则表达式实现 1 ... -
Hibernate的游离态与持久态转换(转)
2012-06-18 10:30 5240本文转自:http://blog.csdn.net/sdban ... -
maven继承parent,relativePath warn信息的解决办法
2012-06-11 17:12 26029转自:http://blog.sina.com.cn/s/bl ... -
使用Maven管理Eclipse Java项目
2012-06-11 17:10 1079转自:http://www.blogjava.net/lost ... -
The parent project must have a packaging type of POM
2012-06-11 17:09 25269The parent project must ha ...
相关推荐
如果应用程序打开的游标数超过这个限制,会引发 ORA-01000: maximum open cursors exceeded 异常。下面将探讨超出打开游标的最大数的原因和解决方案。 原因 应用程序打开的游标数超过 OPEN_CURSORS 参数指定的最大...
- `java.sql.SQLException: ORA-01000: maximum open cursors exceeded`: 当打开的游标超过数据库允许的最大值时会出现此错误。检查代码中游标的关闭情况,避免资源泄漏。 8. **锁冲突** - `java.sql....
当一个应用程序尝试打开过多的游标时,可能会遇到`ORA-01000: maximum open cursors exceeded`错误,这表明单个用户尝试打开的游标数量超过了系统允许的最大值。 `ORA-01000`错误的主要原因通常是程序设计不当,...
当程序在处理大量数据或者进行复杂操作时,可能会遇到“超出打开游标最大数”的错误,即ORA-01000异常。这个错误通常表明数据库当前打开的游标数量超过了`open_cursors`参数所设定的最大值。 首先,我们需要理解为...
接下来,我们讨论一个常见的Oracle错误:ORA-01000: maximum open cursors exceeded,即打开的游标数量超过了允许的最大值。这通常发生在频繁使用预编译语句(PreparedStatement)的场景中。解决这个问题有以下几个...