我的项目中当页面连续刷新多次的时候,或操作数据库次数过多的时候,就报如下的错误,说数据库连接池耗尽
2009-01-15 17:56:30,875 WARN [org.hibernate.util.JDBCExceptionReporter] - SQL Error: 0, SQLState: null
2009-01-15 17:56:30,875 ERROR [org.hibernate.util.JDBCExceptionReporter] - Cannot get a connection, pool exhausted
org.hibernate.exception.GenericJDBCException: Cannot open connection
at org.hibernate.exception.ErrorCodeConverter.handledNonSpecificException(ErrorCodeConverter.java:92)
...
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool exhausted
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:103)
...
Caused by: java.util.NoSuchElementException: Timeout waiting for idle object
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:756)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
... 54 more
我的数据源用的时JNDI,ApplicationContext.xml中如下配置
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/qwest</value>
</property>
</bean>
然后在我的tomcat的server.xml中配置的如下(该配的都配了):、
<Resource name="jdbc/qwest" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/qwest">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>50</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
...
...
</ResourceParams>
</Context>
请教各位大侠帮忙看看啊,不胜感激!!!
2009-01-15 17:56:30,875 WARN [org.hibernate.util.JDBCExceptionReporter] - SQL Error: 0, SQLState: null
2009-01-15 17:56:30,875 ERROR [org.hibernate.util.JDBCExceptionReporter] - Cannot get a connection, pool exhausted
org.hibernate.exception.GenericJDBCException: Cannot open connection
at org.hibernate.exception.ErrorCodeConverter.handledNonSpecificException(ErrorCodeConverter.java:92)
...
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool exhausted
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:103)
...
Caused by: java.util.NoSuchElementException: Timeout waiting for idle object
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:756)
at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
... 54 more
我的数据源用的时JNDI,ApplicationContext.xml中如下配置
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/qwest</value>
</property>
</bean>
然后在我的tomcat的server.xml中配置的如下(该配的都配了):、
<Resource name="jdbc/qwest" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/qwest">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>100</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>50</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>5000</value>
</parameter>
...
...
</ResourceParams>
</Context>
请教各位大侠帮忙看看啊,不胜感激!!!
解决方案 »
- jsp如何实现远程桌面和视频通话
- 【求教】java web开发中拦截器的使用问题
- 奇怪!!liunx部署网站就欢迎页面显示空白
- 求一句SQL语句
- 大伙帮帮忙 struts的validator问题
- myeclipse 8.5+struts2.2.1学习中遇到的表单中的name属性问题
- jsp页面只能显示一半,怎么回事啊?!!!!!!!!!
- 用jspsmartupload上传文件时如何获得文件的路径
- 为何menu.htm 的扩展名该为.jsp时为何出现编译错误
- 如何在网页中嵌入word文档?(急等高手指点)
- 关于JSP后台处理-【上传与下载】求救ING
- 怎样将OSWorkflow2.8导入、集成到eclipse3.4中,并利用它在eclipse中开发工作流程序?
我的数据源是配置在C:\Tomcat 5.0\conf\Catalina\localhost下
qwest.xml 里的
不是在server.xml里的
这里已经说明问题,连接池耗尽!检查你的代码是否写了关闭连接代码,或者最大连接开得不够!
连接池与是否使用Filter没有必须的联系的。
filter里是为了乱码才做的过滤器
<Context path="/jndi" docBase="D:\J2EE\workspace\jndi\WebRoot" reloadable="true">
<Resource name="jdbc/freedom"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/sampledb"
username="root"
password=""
maxActive="10"
maxIdle="3"
maxWait="10000" />
</Context>
docBase就是你项目的绝对路径
Resource name=""就是你的jndi名
其他应该看得懂吧good luck
我上面只是截取部分配置还有感谢11楼 ,我的数据库是mysql的