java - 如何正确销毁Java中的Apache Commons DBCP池?

原文 标签 java memory-management connection-pooling apache-commons apache-commons-dbcp

我想使用poolingdatasource作为我的连接池(api a t:http://commons.apache.org/dbcp/apidocs/org/apache/commons/dbcp/PoolingDataSource.html),但是当我不再需要它时,我不知道该如何处理这个池。如果我想连接到一个新数据库,而不再需要旧池中的连接,该怎么办?池上没有关闭方法。

最佳答案

你不必为了创建一个新的池而杀死这个池。
您可以使用maxidle、timebetweenevictionrunsmillis和minevictableidletimellis参数(请参见here)管理其中的连接,以确保在合理的时间内关闭空闲连接。
或者可以用这些参数编程配置GenericObjectPool,并在创建poolingdatasource时使用。如果你想强制的话,它有一个close()方法。

相关文章:

java - 这个xpath看起来正确吗?

java - 列出不分配的展示

java - int argb颜色输出奇怪的值

java - Log4j正在加载内存?

iphone - 如何访问不在App中的图像

javascript - 具有范围的记忆机制

java - 连接池在Glassfish中不起作用

c++ - 映射导致段故障。如何增加内存?

node.js - 什么时候应该在NodeJS中将连接池与MySQL一起使用

c# - TransactionScope助手,它会耗尽连接池而不会失败-帮助吗?