C3P0连接池配置错误引发异常

初次使用C3P0会如果配置错误,会引发以下异常,乍一看以为是会连接池超时问题。
其实是配置错误,连接池根本没有Connection对象,所以根本拿不到连接对象。

Exception in thread "main" java.sql.SQLException: An attempt by a client to checkout a Connection has timed out.
    at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
    at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:77)
    at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:690)
    at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
    at datasource.C3p0Test.main(C3p0Test.java:13)
Caused by: com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResourcePool@12bc6874 -- timeout at awaitAvailable()
    at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1467)
    at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
    at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
    at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
    at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
    ... 2 more

我的之前的配置文件如下所示,jdbc:postgresql//localhost:5432/shop两个postgresql和//之间漏打了:,倒是参数配置异常报错,所以初学者最好仔细检查配置参数是否正确。



  
  
    
    org.postgresql.Driver
    jdbc:postgresql//localhost:5432/shop
    postgres
    123456
    
    
    5
    10
    3000
  

你可能感兴趣的:(C3P0连接池配置错误引发异常)