我在我的一个测试服务器上获得了这个堆栈跟踪。
poolDataSource.setConnectionFactoryClassName(connectioPoolClass);
poolDataSource.setURL(hostUrl);
poolDataSource.setUser(userName);
poolDataSource.setPassword(passwd);
poolDataSource.setConnectionPoolName(UCP_POOL);
poolDataSource.setInitialPoolSize(50);
poolDataSource.setMinPoolSize(20);
poolDataSource.setMaxPoolSize(200);
poolDataSource.setConnectionWaitTimeout(5);
我们正在使用Oracle 11g,Java 6和普通JDBC。 如果需要,可以提供更多信息。
编辑: 要求
values-sw320dp
values-sw360dp
values-sw600dp
答案 0 :(得分:0)
来自java docs:
在以前的情况下抛出SQLException的子类 如果应用程序执行,则失败的操作可能会成功 一些恢复步骤并重试整个事务或在案例中 分布式事务,事务分支。最低限度, 恢复操作必须包括关闭当前连接和 获得新的联系。
在您的情况下,超时意味着您应该能够通过尝试再次连接来从中恢复。
当然,如果您的连接设置不正确,并且因此您尝试连接到未正确收听的内容,则每次都可能出现异常。