java数据库连接池之bonecp

总算是看完了bonecp源码了,先贴出我的项目中bonecp的配置,等项目修改完了在好好整理这篇博客 ,共同学习
<?xml version="1.0" encoding="UTF-8"?>
<bonecp-config>
<default-config>
<property name="jdbcUrl">jdbc:mysql://127.0.0.1:3306/NEWTEST? useUnicode=true;charactorEncoding=UTF-8</property>
<property name="username">root</property>
<property name="password">123456</property>
<!-- 连接分区个数-->
<property name="partitionCount">4</property>
<!-- 每个分区创建连接的上限-->
<property name="maxConnectionsPerPartition">50</property>
<!-- 每个分区创建连接的下限-->
<property name="minConnectionsPerPartition">10</property>
<!-- 设置连接池阀值-->
<property name="poolAvailabilityThreshold">30</property>
<!-- 每个分区创建连接的步长-->
<property name="acquireIncrement">20</property>
<!-- statement缓冲对象-->
<property name="statementsCacheSize">100</property>
<!-- BoneCP线程配置参数-->
<property name="releaseHelperThreads">3</property>
<property name="statementReleaseHelperThreads">3</property>
<!-- BoneCP调试配置参数 调试用 开启connection关闭情况监视器功能,默认false -->
<property name="closeConnectionWatch">false</property>
</default-config>
</bonecp-config>


今天已经把BoneCP放在了自己的项目中了,用jprofiler简答的测试了下 ,看到了这样些东西,releaseThreadHelp,statmencolseHelper,每个分区都有且是你的配置文档设置的个数,他确实很强大,我的测试中连续100000次的查询只用了19ms,连续的插入数据是我以前的2倍··3倍,确实很快,jprofiler内存显示,大概24M,当然和配置有一定的关系,反正很小,
releaseThreadHelp,statmencolseHelper,是辅助线程,帮助回收connection和statement对象,管理的很好,掌握bonecp的话,有时间最好好好研读下源码,快速运用的话,好好看下配置文档就可以了。欢迎大家一起讨论。就本人觉得BONECP现在版本是0.7.1的,发布的是稳定版本,0.8.0还是开发者预览版,最好采用前者,bonecp开源的大牛们还是值得信赖的 。。。。
开源版本历览:https://oss.sonatype.org/content/groups/public/com/jolbox/bonecp/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据库连接池是一种用于管理和分配数据库连接的技术。它通过预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从缓冲池中取出一个连接,使用完毕后再放回去。这样可以避免频繁地创建和销毁数据库连接,提高了数据库操作的效率。\[1\] 在Java中,常用的数据库连接池有c3p0、DBCP、Proxool、BoneCP和Druid。其中,c3p0是速度相对较慢但稳定性较好的连接池,DBCP速度相对c3p0较快但不太稳定,Proxool具有监控连接池状态的功能但稳定性稍差,BoneCP速度较快,而Druid是阿里提供的数据库连接池,集合了DBCP、c3p0和Proxool的优点。\[2\] 关于数据库连接池的类加载机制,一般是通过在代码中引入相应的数据库连接池库,然后使用库中提供的类和方法来创建和管理连接池。例如,在示例代码中使用了c3p0数据库连接池,通过创建ComboPooledDataSource对象来配置连接池的相关属性,然后通过getConnection()方法获取连接。\[3\]这些库一般会提供一些默认的配置,也可以根据需要进行自定义配置。 总结来说,数据库连接池是一种用于管理和分配数据库连接的技术,通过预先创建一定数量的连接并重复使用,提高了数据库操作的效率。在Java中,可以使用各种数据库连接池库来实现连接池的功能,并通过类加载机制来使用和配置连接池。 #### 引用[.reference_title] - *1* *2* *3* [JDBC-数据库连接池](https://blog.csdn.net/qq_35947021/article/details/127738967)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v4^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值