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

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

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

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

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

阅读更多
个人分类: 数据库
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭