Jdbc BoneCP vs WebLogic';s自己的数据库连接池

Jdbc BoneCP vs WebLogic';s自己的数据库连接池,jdbc,database-connection,weblogic,connection-pooling,ojdbc,Jdbc,Database Connection,Weblogic,Connection Pooling,Ojdbc,我有一个servlet,它使用JDBC(ojdbc6.jar)和BoneCP连接到oracledb。我现在需要使用代码将我的BoneCP移植到WebLogic开箱即用的东西上,而不需要在包中包含BoneCP 建议的方法是什么?我可以使用什么WebLogic功能,特别是获得BoneCP的等效功能: 演出 能够记录失败的SQL语句 从丢失的数据库连接自动恢复 提前感谢。最好的方法是创建一个指向数据库的标准Oracle JDBC连接池。根据您的需要(连接数等)进行调整。接下来,您需要从代码中重构对

我有一个servlet,它使用JDBC(ojdbc6.jar)和BoneCP连接到oracledb。我现在需要使用代码将我的BoneCP移植到WebLogic开箱即用的东西上,而不需要在包中包含BoneCP

建议的方法是什么?我可以使用什么WebLogic功能,特别是获得BoneCP的等效功能:

  • 演出
  • 能够记录失败的SQL语句
  • 从丢失的数据库连接自动恢复

提前感谢。

最好的方法是创建一个指向数据库的标准Oracle JDBC连接池。根据您的需要(连接数等)进行调整。接下来,您需要从代码中重构对以前的连接池实现的任何显式引用。如果您一直在代码中使用java.sql.*接口,那么应该很少甚至没有引用

一旦所有这些都被重构,您将只有一点代码(或配置文件)告诉您的应用程序从给定的JNDI名称恢复实现
javax.sql.DataSource
的东西,并从中获得
连接。其余的应该是一样的-只需做任何你需要的事情并关闭你的
结果集
语句
连接
,就像你到现在为止必须做的那样

关于您的问题,您可以在此处找到有关如何监视连接池及其故障恢复策略的详细信息(根据您的应用程序服务器版本,我将使用的版本粘贴到此处):


关于性能,我没有准确的数据,也没有比较两种实现的基准;为了您的平静,我想告诉您,我从未在连接池实现中发现数据库性能问题-这并不意味着它不存在,但这是我最不愿意寻找的地方;)

多谢各位。但有一个问题——WebLogic数据源池背后的实际实现是什么?是Oracle通用连接池(UCP)吗?因为如果是这样的话,人们会明确地说它不被推荐。AFAIK、连接池的weblogic实现等都属于weblogic.jdbc.common.internal.*从8.1到10.3(对不起,我没有尝试过更新的版本),所以我猜它的代码来自BEA时代。我不知道从那时起代码是否被合并,但UCP对我来说似乎是一个不同的产品