当前位置:网站首页 > 技术博客 > 正文

javajdbc连接池



DBCP(Database connection pooling) 是 Apache 旗下 Commons 项目下的一个子项目,提供连接池功能;本文主要介绍 DBCP 的基本使用,文中使用到的软件版本:Java 1.8.0_191、DBCP 2.9.0、Spring Boot 2.3.12.RELEASE。

参数 描述 username 用户名 password 密码 url 连接 url driverClassName 驱动名称 connectionProperties

参数 默认值 描述 defaultAutoCommit 驱动的默认值 是否自动提交 defaultReadOnly 驱动的默认值 是否只读 defaultTransactionIsolation 驱动的默认值 defaultCatalog cacheState true 是否缓存状态信息 defaultQueryTimeout null 默认查询时间 enableAutoCommitOnReturn true 连接归还到池时,是否设置为自动提交 rollbackOnReturn true

参数 默认值 描述 initialSize 0 初始连接数 maxTotal 8 最大连接数;负数表示没有限制 maxIdle 8 最大空闲连接数,多余的空闲连接将被释放;负数表示没有限制 minIdle 0 最小空闲连接数,如果不足则新的空闲连接将被创建。 maxWaitMillis indefinitely 从连接池获取连接,最大等待时间,超过该时间将抛出异常;-1 表示无限期

参数 默认值 描述 validationQuery validationQueryTimeout no timeout 验证查询超时时间(秒)。如果设置为正数,那么通过 setQueryTimeOut()方法来设置查询的超时时间。 testOnCreate false 连接创建后,是否验证有效性 testOnBorrow true 从连接池获取连接时,是否验证有效性 testOnReturn false 连接返回连接池时,是否验证有效性 testWhileIdle false 连接空闲时,是否验证有效性;如果验证失败,则丢弃该连接。 timeBetweenEvictionRunsMillis -1 校验空闲连接的时间周期,非正表示不验证 numTestsPerEvictionRun 3 每次校验空闲连接的个数 minEvictableIdleTimeMillis 1000 * 60 * 30 空闲连接至少多长时间后,才会被校验 softMinEvictableIdleTimeMillis -1 空闲连接至少多长时间后,才会被校验;还需满足"空闲连接数>=minIdle" maxConnLifetimeMillis -1 连接存活的最大时间;如果设置为非正数,则存活时间是无限的 logExpiredConnections true 过期的连接被连接池关闭时,是否写日志 connectionInitSqls null 连接第一次创建时,执行的初始化 SQL lifo true true 表示获取连接时将返回最后返还连接池的连接(后进先出);false,则相反(先进先出)。

参数 默认值 描述 poolPreparedStatements false 预编译语句是否池化 maxOpenPreparedStatements unlimited 最大打开的预处理语句,负数表示没有限制

参数 默认值 描述 accessToUnderlyingConnectionAllowed false 是否允许访问底层连接

如果允许,可以使用下面的代码来访问底层连接:

参数 默认值 描述 removeAbandonedOnMaintenance
removeAbandonedOnBorrow
false removeAbandonedTimeout 300 连接泄露的超时时间(秒) logAbandoned false 连接删除时是否打印堆栈信息 abandonedUsageTracking false 如果设置为 true,数据库连接每执行一个方法都会打印堆栈信息

参数 默认值 描述 fastFailValidation false disconnectionSqlCodes null 自定义异常代码 jmxName 注册连接池的 jmx 名称

详细的配置说明可参考官网文档:http://commons.apache.org/proper/commons-dbcp/configuration.html。

2.1.1、引入依赖

2.1.2、使用例子

2.2.1、引入依赖

2.2.2、单数据源

application.yml 配置:

使用:

2.2.3、多数据源

application.yml 配置:

数据源配置类:

使用:

版权声明


相关文章:

  • 公式编辑器破解方法2025-09-05 07:01:00
  • c++类中构造函数2025-09-05 07:01:00
  • jdbc数据库连接池参数2025-09-05 07:01:00
  • rtt算法2025-09-05 07:01:00
  • udp编程实例2025-09-05 07:01:00
  • varchar2和nvarchar2的区别2025-09-05 07:01:00
  • 极点五笔输入法技巧2025-09-05 07:01:00
  • java内部类概念2025-09-05 07:01:00
  • 汽车emc标准2025-09-05 07:01:00
  • emb嵌入式正版2025-09-05 07:01:00