dbcp连接池错误Failed to validate a poolable connection. java.sql.SQLException:

  1. <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init"  
  2.    destroy-method="close" >  
  3.    <property name="driverClassName">  
  4.      <value>${jdbc_driverClassName}</value>  
  5.    </property>  
  6.    <property name="url">  
  7.      <value>${jdbc_url}</value>  
  8.    </property>  
  9.    <property name="username">  
  10.      <value>${jdbc_username}</value>  
  11.    </property>  
  12.    <property name="password">  
  13.      <value>${jdbc_password}</value>  
  14.    </property>  
  15.    <!-- 连接池最大使用连接数 -->  
  16.    <property name="maxActive">  
  17.      <value>20</value>  
  18.    </property>  
  19.    <!-- 初始化连接大小 -->  
  20.    <property name="initialSize">  
  21.      <value>1</value>  
  22.    </property>  
  23.    <!-- 获取连接最大等待时间 -->  
  24.    <property name="maxWait">  
  25.      <value>60000</value>  
  26.    </property>  
  27.    <!-- 连接池最大空闲 -->  
  28.    <property name="maxIdle">  
  29.      <value>20</value>  
  30.    </property>  
  31.    <!-- 连接池最小空闲 -->  
  32.    <property name="minIdle">  
  33.      <value>3</value>  
  34.    </property>  
  35.    <!-- 自动清除无用连接 -->  
  36.    <property name="removeAbandoned">  
  37.      <value>true</value>  
  38.    </property>  
  39.    <!-- 清除无用连接的等待时间 -->  
  40.    <property name="removeAbandonedTimeout">  
  41.      <value>180</value>  
  42.    </property>  
  43.    <!-- 连接属性 -->  
  44.    <property name="connectionProperties">  
  45.      <value>clientEncoding=UTF-8</value>  
  46.    </property>  
  47.  </bean>  
  48. 以上是在spring中配置数据源的一些参数,如果没错的话应该是出现这个错误的原因是配置链接无效了,所以要主动清除一下
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
启动报错"Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: interrupt"通常是由于数据库连接耗尽导致的。这个错误表示应用程序无法从连接中获取到数据库连接。 解决这个问题的方法有以下几种: 1. 增加连接的大小:可以通过增加连接的最大连接数来解决连接耗尽的问题。可以在连接配置文件中修改`maxActive`属性的值,增加连接的大小。 2. 检查数据库连接是否正确关闭:确保在使用完数据库连接后,及时关闭连接。如果连接没有正确关闭,会导致连接中的连接无法释放,最终导致连接耗尽。 3. 检查数据库连接超时设置:检查数据库连接超时的设置,确保连接在一定时间内没有被使用时会被释放回连接。 4. 检查数据库服务器的负载:如果数据库服务器的负载过高,可能会导致连接中的连接无法及时释放。可以通过监控数据库服务器的负载情况,及时调整服务器资源。 5. 检查数据库连接配置:检查数据库连接配置是否正确,包括数据库的URL、用户名、密码等信息。 6. 检查数据库驱动版本:有些数据库驱动存在bug,可能会导致连接无法正常工作。可以尝试升级或更换数据库驱动版本。 以下是一个示例代码,演示如何使用连接获取数据库连接: ```java import org.apache.commons.dbcp.BasicDataSource; public class ConnectionPoolExample { public static void main(String[] args) { BasicDataSource dataSource = new BasicDataSource(); dataSource.setDriverClassName("com.mysql.jdbc.Driver"); dataSource.setUrl("jdbc:mysql://localhost:3306/mydb"); dataSource.setUsername("username"); dataSource.setPassword("password"); try (Connection connection = dataSource.getConnection()) { // 使用数据库连接进行操作 } catch (SQLException e) { e.printStackTrace(); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值