将C3P0 ComboPooledDataSource getConnection()始终返回有效的连接吗?

时间:2015-12-06 16:12:10

标签: java validation connection c3p0

该方法有哪些可能的返回值?

  1. 空?
  2. 无效连接?
  3. 问题是我应该检查返回的连接是否为空或有效?或者我应该抓住SQLException?如果没有抛出SQLException,返回的连接是否始终有效?

1 个答案:

答案 0 :(得分:1)

根据我的经验(以及来自DataSource的javadoc),此方法将返回连接的Connection,您可以使用它来查询数据库。如果池已用尽,则方法将阻塞,直到Connection可用。

如果舱压力数据库连接丢失的可能性很小,这些错误将在您的应用程序中发生。如果您想在结账/定期检查您的连接 - c3p0具有为您执行此操作的配置选项。

有关配置选项,请参阅http://www.mchange.com/projects/c3p0/#testConnectionOnCheckout