我有一个使用Spring + Hibernate + C3P0作为连接池的应用程序。如果我启动应用程序并且数据库已关闭,则Tomcat将挂起很长的日志时间而不提供任何反馈。我可以设置一些属性以避免这种情况吗?例如,如果在30秒后它无法获得连接,则抛出连接超时异常。
答案 0 :(得分:2)
默认情况下,如果c3p0无法获取连接,则需要大约30秒才能发出故障信号。您可以通过修改c3p0在数据库中尝试的次数或尝试之间的间隔来控制时间长度。
请参阅c3p0.acquireRetryAttempts和c3p0.acquireRetryDelay。
如果将c3p0.acquireRetryAttempts设置为1,则c3p0将不会重试,连接尝试将无法立即重试。