BoneCP是一个开源的数据库连接池,听说比C3P0快好多倍(这个自己没有验证过)
关于它的介绍看这个吧:
下面做一个简单的例子
创建一个Java项目,导入BoneCP依赖的JAR和数据库驱动JAR
BoneCP依赖的JAR文件
bonecp-0.7.0.jar
google-collections-1.0.jar
log4j-1.2.16.jar
slf4j-log4j12-1.6.1.jar
slf4j-api-1.6.1.jar (其中这个Hibernate3.6已经提供了)
最好在提供一个log.properties文件 内容如下:
log4j.category.com.jolbox=DEBUG,Console # Stdout log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.layout=org.apache.log4j.PatternLayout log4j.appender.Console.layout.ConversionPattern=[%t] %-5p %c %x - %m%n
编写BoneCP的配置文件bonecp-config.xml
<?xml version="1.0" encoding="UTF-8"?> <bonecp-config> <default-config> <!-- 数据库驱动 --> <property name="driverClass">com.mysql.jdbc.Driver</property> <!-- URL --> <property name="jdbcUrl">jdbc:mysql://localhost:3306/spring</property> <!-- 数据库的用户名 --> <property name="username">root</property> <!-- 数据库的密码 --> <property name="password">root</property> <!-- 检查数据库连接池中空闲连接的间隔时间,单位是分,默认值:240,如果要取消则设置为0 --> <property name="idleConnectionTestPeriod">60</property> <!-- 连接池中未使用的链接最大存活时间,单位是分,默认值:60,如果要永远存活设置为0 --> <property name="idleMaxAge">240</property> <!-- 每个分区最大的连接数 --> <property name="maxConnectionsPerPartition">30</property> <!-- 每个分区最小的连接数 --> <property name="minConnectionsPerPartition">10</property> <!-- 分区数 ,默认值2,最小1,推荐3-4,视应用而定--> <property name="partitionCount">3</property> <!-- 每次去拿数据库连接的时候一次性要拿几个,默认值:2 --> <property name="acquireIncrement">5</property> <!-- 每个分区释放链接助理进程的数量,默认值:3,除非你的一个数据库连接的时间内做了很多工作,不然过多的助理进程会影响你的性能 --> <property name="releaseHelperThreads">3</property> </default-config> </bonecp-config>
测试:
package test; import java.sql.Connection; import java.sql.SQLException; import com.jolbox.bonecp.BoneCPDataSource; public class Demo { public static void main(String[] args) { BoneCPDataSource dataSource = new BoneCPDataSource(); dataSource.getConfigFile(); Connection conn = null; try { long startTime = System.currentTimeMillis(); for (int i = 0; i < 100; i++) { conn = dataSource.getConnection(); } long endTime = System.currentTimeMillis(); System.out.println("====================用时:" + (endTime - startTime) + "ms===================="); } catch (SQLException e) { e.printStackTrace(); } finally { try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
关于BoneCP更多的配置,可以参考
http://www.blogjava.net/sxyx2008/archive/2011/03/16/346386.html
下面做一个BoneCP与Spring的集成,只要在beans.xml配置如下即可:
<!-- 配置数据库连接池 --> <bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close"> <property name="driverClass" value="com.mysql.jdbc.Driver" /> <property name="jdbcUrl" value="jdbc:mysql://localhost/spring" /> <property name="username" value="root" /> <property name="password" value="root" /> <property name="idleConnectionTestPeriod" value="60" /> <property name="idleMaxAge" value="240" /> <property name="maxConnectionsPerPartition" value="30" /> <property name="minConnectionsPerPartition" value="10" /> <property name="partitionCount" value="3" /> <property name="acquireIncrement" value="5" /> <property name="statementsCacheSize" value="100" /> <property name="releaseHelperThreads" value="3" /> </bean>
相关推荐
bonecp数据库连接池jar包0.7.1: bonecp-0.7.1.RELEASE.jar bonecp-provider-0.7.1-rc2.jar bonecp-spring-0.7.1.RELEASE.jar
采用bonecp数据库连接池封装了Jdbc,当时也是网上下载了一份代码,发现不能用,只好自己修改代码,现在这个代码是可以直接运行的,测试用的Sql Server 2008,表很简单,就四个字段
Java中的BoneCP数据库连接池用法.doc
开源数据库连接池bonecp附教程;据说是最快的数据库连接池
JAVA数据库连接池(C3P0,Druid,JNDI ,DBCP,Proxool,BoneCP) 源码包含各个数据库连接池的连接DEMO spring+mybatis+maven
基于java的开发源码-数据库连接池 BoneCP.zip 基于java的开发源码-数据库连接池 BoneCP.zip 基于java的开发源码-数据库连接池 BoneCP.zip 基于java的开发源码-数据库连接池 BoneCP.zip 基于java的开发源码-数据库...
Java数据库连接池 BoneCP
数据库连接池BoneCP源码分析报告
bonecp数据库连接池很好用的例子 BoneCPDataSource.java bonecp-0.7.1-rc2.jar bonecp-provider-0.7.0.jar slf4j-api-1.6.1.jar slf4j-log4j12-1.6.1.jar guava-r07.jar oracle_jdbc_classes12.jar
数据库连接池BoneCP源码分析报告.doc
BoneCP 是一个高性能的开源java数据库连接池实现库。它的设计初衷就是为了提高数据库连接池的性能,根据某些测试数据发现,BoneCP是最快的连接池。
基于Java的数据库连接池 BoneCP.zip
基于java的数据库连接池 BoneCP.zip
Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署...
java源码:Java数据库连接池 BoneCP.jar
一个比c3p0更快的数据库连接池,代码量少,简介,效率排行第一 比排行第二的连接池快25倍
基于Java的实例源码-数据库连接池 BoneCP.zip
c3p0,jdbc,jndi,BoneCP等多种数据库连接池配置详解
应该是JAVAA里面最好最稳定最快的数据库连接池库bonecp-0.8.0,大家可以下载使用使用