BoneCp连接池详解及和Hibernate配置(当今最快的连接池)



BoneCP是一款高效的数据库连接池,它以其出色的性能和稳定性赢得了开发者们的青睐。相较于其他常见的连接池如c3p0,BoneCP宣称能提供超过25倍的性能提升,这对于高并发、大数据量的Web应用来说尤其重要。在本文中,我们将深入探讨BoneCP的核心特性、配置方法以及如何与Hibernate框架进行集成。 我们来看一下BoneCP为何能实现如此高的性能。其主要得益于以下几点: 1. **资源复用**:BoneCP采用预分配和复用的策略,预先创建并缓存一定数量的数据库连接,避免了频繁创建和销毁连接的开销。 2. **线程局部化**:BoneCP使用线程局部存储(Thread Local)来管理连接,减少了锁竞争,提高了并发性能。 3. **连接池分割**:BoneCP允许将连接池分割成多个独立的连接池,每个连接池服务于一个特定的数据库操作,降低了资源争抢的可能性。 4. **高效的连接分配算法**: BoneCP采用了一种优化的分配策略,确保在高并发环境下也能快速获取到连接。 接下来,我们将讲解如何配置BoneCP。在Java项目中,通常会通过`bonecp.properties`配置文件来设定参数,例如: ```properties # 数据库连接信息 jdbc.url=jdbc:mysql://localhost:3306/test jdbc.username=root jdbc.password=root # 连接池大小配置 connection.timeout=5000 # 超时时间,单位毫秒 minConnectionsPerPartition=10 # 每个分区的最小连接数 maxConnectionsPerPartition=20 # 每个分区的最大连接数 partitionCount=2 # 分区数量 # 其他配置 idleMaxAge=60 # 连接空闲的最大时间,单位分钟 maxConnectionAge=30 # 连接最大存活时间,单位分钟 testWhileIdle=true # 是否在空闲时检查连接 testOnReturn=true # 返回到池时是否检查连接 ``` 配置完成后,我们需要在代码中加载配置并初始化连接池: ```java Properties props = new Properties(); props.load(new FileInputStream("path/to/bonecp.properties")); BoneCPDataSource ds = new BoneCPDataSource(props); ``` 我们来看如何将BoneCP与Hibernate集成。在Hibernate的配置文件`hibernate.cfg.xml`中,指定使用BoneCP作为数据源: ```xml <property name="hibernate.connection.datasource">com.jolbox.bonecp.BoneCPDataSource</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.show_sql">true</property> ``` 同时,还需要在`bonecp.properties`中设置Hibernate相关的属性,例如: ```properties hibernate.id.new_generator_mappings=false hibernate.hbm2ddl.auto=update ``` 至此,我们就完成了BoneCP的配置和与Hibernate的集成。在实际开发中,可以结合Spring等框架进一步简化配置和管理,提高开发效率。 BoneCP凭借其出色的性能和易用性,成为了许多开发者的选择,尤其适合那些对数据库性能有较高要求的应用场景。
































- windproof2011-11-21BoneCp确实是比C3P0要好很多~~~现在的项目中正在准备替换掉C3P0 感谢
- caishaobinyun2011-11-03不错,挺好的,不过这是普通jdbc版的,要是直接和hibernate整合好的就更好了

- 粉丝: 58
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 房地产销售部业绩考评暂行办法.doc
- GTJ2018-基础次梁的计算学习.docx
- [河南]公路特大桥钻孔灌注桩施工方案.doc
- 下沉式道路基坑降水及土方开挖专项施工方案.doc
- 大型储煤槽仓逆作法施工工法.doc
- 培训学校活动方案.pdf
- 单片机课程设计项目-数字电压表(与“转换”有关文档共11张).pptx
- 公司网站建设维护管理办法.docx
- 人力资源总监如何做好企业年度培训计划.doc
- 商品销售报告Excel模板.xlsx
- 供热蒸汽管道安装施工工艺.pdf
- 高中数学人教B选修1-1学案3-2-3-导数的四则运算法则-.docx
- 建筑工程计量与计价-第3章.ppt
- [重庆]住宅楼工程土方回填工程施工方案.doc
- 百万公众网络学习工程.docx
- 高中数学人教B版必修三学案第一单元1.1-3算法的三种基本逻辑结构和框图表示(二).docx


