0

我有一个使用 Spring+Hibernate+C3P0 作为连接池的应用程序。如果我启动应用程序并且数据库已关闭,Tomcat 会挂起很长的日志时间而没有提供任何反馈。我可以设置一些属性来避免这种情况吗?例如,如果 30 秒后无法获得连接,则抛出连接超时异常。

4

1 回答 1

2

默认情况下,如果 c3p0 无法获取连接,它应该需要大约 30 秒才能发出失败信号。您可以通过修改 c3p0 在数据库上的尝试次数或尝试之间的间隔来控制时间长度。

请参阅c3p0.acquireRetryAttemptsc3p0.acquireRetryDelay

如果您将 c3p0.acquireRetryAttempts 设置为 1,c3p0 将不会重试并且连接尝试将立即重试失败。

另请参见配置从数据库中断中恢复

于 2013-05-20T08:40:17.553 回答