Tomcat的数据库连接池,Connection用完后要关闭

原创 2011年01月13日 16:12:00

    一般来说,在tomcat中配置数据库连接池,而我们不停的建立数据库连接,而没有关闭数据库的连接的话就会产生这样的异 常:Cannot get a connection, pool exhaustedCannot get a connection, pool exhausted 。其实,这是由于连接池中的连接被消耗殆尽的缘故。我们实际上,在开发中应该养成良好的开发习惯,就是在用完连接后应该马上关闭Connection,这 样就很好的解决了这样的问题。

    可能有人会说,那每次用完池的连接都要关闭数据库的连接,那池就不起作用了吗?那不就是用完一次连接就关闭,然后再次建立连接,这样效率不是依然很低吗? 其实不然,这里调用con.close()其实并没有把这个连接真正的关闭掉,而是容许池把此连接再次放回到池中分配给别的客户端来使用,所以大可以放心 的关闭连接,而不影响连接池的效率。

    当然,这不是唯一的解决方案,但是我认为这是最好的解决方案。但是,如果你在编程的时候的确是忘记关闭数据库的连接,那依然有其他的解决方案:(当然最好是在finally中关闭con)

    1. 可以重新启动你的tomcat服务器,这是最灵的解决方案,不过没什么技术含量
    2. 在数据源的配置文件中把maxactive属性的值调整到更大,比如100

三种数据库连接池的配置及使用(For JDBC)

三种开源数据源c3p0,DBCP以及Tomcat内置数据源(DBCP)的使用简介,
  • u012802702
  • u012802702
  • 2016年04月15日 09:26
  • 9794

数据库连接池的使用方法

数据库连接池的介绍 DBCP的使用方式 C3P0的使用方式
  • shuaicihai
  • shuaicihai
  • 2016年12月21日 00:53
  • 1905

Tomcat的数据库连接池,Connection用完后要关闭

    一般来说,在tomcat中配置数据库连接池,而我们不停的建立数据库连接,而没有关闭数据库的连接的话就会产生这样的异 常:Cannot get a connection, pool exhau...
  • bearray123
  • bearray123
  • 2011年01月13日 16:12
  • 2846

tomcat连接池长时间不访问报错

环境: 1、使用tomcat内置连接池部署 2、mysql5.6   问题: 当连接池中的连接长时间未访问时,会报连接已经被关闭。   分析: mysql5.6中默认的wait_tim...
  • shayeyekai
  • shayeyekai
  • 2014年01月16日 11:37
  • 961

使用数据库连接池是否需要关闭Connection?

我们在平时项目中用到了数据库连接池,比如c3p0,dbcp,jndi... 在使用结束的时候我们也要关闭连接。为什么呢。具体解释如下: 使用 c3p0 的话,也是 java.sql.Con...
  • ywt_go
  • ywt_go
  • 2013年05月13日 18:51
  • 1634

使用连接池一定要正确关闭PreparedStatement和ResultSet

使用jdbc连接数据库,获取数据库连接的过程在网络上其他文章中多有介绍,在此不多介绍,本文主要分析获取数据库连接并且完成处理过程后如何处理这个连接。 先看一个简单的模拟数据库连接池获取连接的实例...
  • zf_1024
  • zf_1024
  • 2017年09月15日 13:08
  • 939

Tomcat使用java+mysql连接池一定时间后不响应问题

平常用tomcat写东西时,因为都不算是企业级的,数据量很小,测试什么的也没有高并发请求和大量请求的测试。而在tomcat一直运行时,一定时间后遇到一个问题,程序运行到连接池获取链接的DataSour...
  • morefans
  • morefans
  • 2015年11月23日 15:48
  • 1724

tomcat连接池的三个重要参数(用于处理连接池满的问题)

tomcat连接池的三个重要参数 tomcat连接池的三个重要参数,连接池的配置很重要,配置不好容易造成程序运行部稳定,下面把常见的问题归纳了下: a.   如果设为true则to...
  • nidayewocao
  • nidayewocao
  • 2011年11月04日 10:35
  • 1856

tomcat7连接池使用

一直纠结于数据库连接池的实现,今天终于挤出时间来实现一下。tomcat之前连接池使用dbcp实现,dbcp有很多的缺点,现在的tomcat采用了自己实现的线程池,用起来还是非常的简单方面的。整体操作如...
  • dliyuedong
  • dliyuedong
  • 2014年04月10日 09:41
  • 11951

动态代理实现数据库连接池功能(代理Connection的close方法)

package cn; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import jav...
  • u010644448
  • u010644448
  • 2016年07月13日 16:28
  • 1010
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Tomcat的数据库连接池,Connection用完后要关闭
举报原因:
原因补充:

(最多只允许输入30个字)