出现这个问题最大的原因是没有及时关闭数据库资源,今天遇到这个问题,一开始真的摸不着头脑,根据以前的认知,应该是没有关闭数据数据库资源引起的,可是这回我的代码里面操作完数据库也有进行关闭来着....
finally {
try {
if (null != rs) {
rs.close();
}
if (null != ra) {
ra.close();
}
ps.close();
} catch (Exception e) {
logger.error("关闭结果集和ps时异常!" + e);
throw new CSSBaseBizCheckedException(30405506, e);
}
}
最后找了半天才发现创建prepareStatement对象的语句竟然写在for循环里面,一开始没注意,虽然创建出来的ps没变的,但是每次循环结束创建的游标数不就等于循环体的大小吗?难怪数据库受不了报错...记下引以为戒~