专有连接api的连接池(非jdbc)

时间:2011-04-14 06:44:08

标签: java connection-pooling

我正在使用API​​连接到某些硬件终端和网络。 API允许我连接到服务器,断开连接并查询数据,这与JDBC连接允许的操作非常相似。无论如何,由于这不使用JDBC Connection接口,我不能使用已存在的连接池。 我想避免自己写一个,如果我可以使用已经存在的,或者可能只是在其上构建一个小适配器。任何人都知道任何允许我启用连接池的框架/库,可以处理我的连接,可以确保连接始终处于活动状态等等吗?

我看过Commons Pool,但是这只给你几个类来放置/获取你的连接...它不做任何维护任务等(检查连接是否有时无效,重新连接等等)。我可以添加连接检查和重新连接的机制,如果有任何问题等,以防没有任何事情已经这样做。

干杯,斯蒂夫。

2 个答案:

答案 0 :(得分:4)

Apache Commons Pool实际上支持创建,销毁和检查对象的有效性,然后再使用PoolableObjectFactory类将其与实际池实现一起使用,方法是将其作为参数传递:

final PoolableObjectFactory objectFactory = new MyPoolableObjectFactoryImpl();
final ObjectPool pool = new GenericObjectPool(objectFactory);

答案 1 :(得分:0)

您可以查看dbcp http://commons.apache.org/dbcp/

它的BasicDataSource提供了诸如maxActive,maxIdle,maxWait等方法检查文档以获取更多信息 http://commons.apache.org/dbcp/apidocs/org/apache/commons/dbcp/BasicDataSource.html

有趣的是,如果你要进行新的实现尝试tomcat 7 jdbc连接池 http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html

[edit]对场景-hGx毫无用处,因此提升了Henning的帖子