美文网首页
C3P0连接池配置错误引发异常

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

作者: 刺雒 | 来源:发表于2019-08-23 11:38 被阅读0次

初次使用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

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


<c3p0-config>
  <!-- 使用默认的配置读取连接池对象 -->
  <default-config>
    <!--  连接参数 -->
    <property name="driverClass">org.postgresql.Driver</property>
    <property name="jdbcUrl">jdbc:postgresql//localhost:5432/shop</property>
    <property name="user">postgres</property>
    <property name="password">123456</property>
    
    <!-- 连接池参数 -->
    <property name="initialPoolSize">5</property>
    <property name="maxPoolSize">10</property>
    <property name="checkoutTimeout">3000</property>
  </default-config>
</c3p0-config>

相关文章

网友评论

      本文标题:C3P0连接池配置错误引发异常

      本文链接:https://www.haomeiwen.com/subject/ahpzsctx.html