如何在Oracle UCP中使用timetoliveconnection time outcallback
-
10-10-2019 - |
题
如何在Oracle UCP(通用连接池)中使用timetoliveconnectionTimeCallback?
我希望Pooldatasource或UniversalConnection -Poolmanager具有一个接口可以注册此类回调。我希望这样的接口将通过接口传递相关的连接。都不是真的。
看来我必须向每个通用式连接注册一个单独的timetoliveconnectionTimeCallback,在我看来,在我看来,棘手,丑陋(大量UCP Imports/Glue代码)和困难(创建数据源包装器)。
还是我弄错了?不幸的是,该文档仍然保持沉默。
解决方案
一段时间过去了,我意识到我的假设是正确的。我必须注册每个 Connection
以一种棘手的方式。
我也打开了 支持请求 从Oracle确认了这一点:
void registertimetoliveconnection time outcallback(timetoliveconnection time outcallback cbk)抛出java.sql.sqlexception
登录使用连接的时间播放连接超时回调。
每个汇总连接都注册回调对象。在同一连接上注册超过1个timetoliveconnectionTimeCallbacks是一个错误,否则您将获得异常。
如其中所述,每个汇总连接都注册了回调对象。
由于其他一些错误和/或设计缺陷(当然,后者可能是主观的),我决定不在项目中的UCP。
不隶属于 StackOverflow