小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

BoneCP數(shù)據(jù)庫(kù)連接池

 aaie_ 2016-05-08

BoneCP是一個(gè)開(kāi)源的數(shù)據(jù)庫(kù)連接池,聽(tīng)說(shuō)比C3P0快好多倍(這個(gè)自己沒(méi)有驗(yàn)證過(guò))

關(guān)于它的介紹看這個(gè)吧:

http:///index.html 

 

下面做一個(gè)簡(jiǎn)單的例子

創(chuàng)建一個(gè)Java項(xiàng)目,導(dǎo)入BoneCP依賴(lài)的JAR和數(shù)據(jù)庫(kù)驅(qū)動(dòng)JAR

 

BoneCP依賴(lài)的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   (其中這個(gè)Hibernate3.6已經(jīng)提供了)

 

最好在提供一個(gè)log.properties文件 內(nèi)容如下:

Xml代碼  收藏代碼
  1. log4j.category.com.jolbox=DEBUG,Console  
  2. # Stdout  
  3. log4j.appender.Console=org.apache.log4j.ConsoleAppender  
  4. log4j.appender.Console.layout=org.apache.log4j.PatternLayout  
  5. log4j.appender.Console.layout.ConversionPattern=[%t] %-5p %c %x - %m%n  

 

 

編寫(xiě)B(tài)oneCP的配置文件bonecp-config.xml

Xml代碼  收藏代碼
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <bonecp-config>  
  3.     <default-config>  
  4.         <!-- 數(shù)據(jù)庫(kù)驅(qū)動(dòng) -->  
  5.         <property name="driverClass">com.mysql.jdbc.Driver</property>  
  6.         <!-- URL -->  
  7.         <property name="jdbcUrl">jdbc:mysql://localhost:3306/spring</property>  
  8.         <!-- 數(shù)據(jù)庫(kù)的用戶(hù)名 -->  
  9.         <property name="username">root</property>  
  10.         <!-- 數(shù)據(jù)庫(kù)的密碼 -->  
  11.         <property name="password">root</property>  
  12.         <!-- 檢查數(shù)據(jù)庫(kù)連接池中空閑連接的間隔時(shí)間,單位是分,默認(rèn)值:240,如果要取消則設(shè)置為0 -->  
  13.         <property name="idleConnectionTestPeriod">60</property>  
  14.         <!-- 連接池中未使用的鏈接最大存活時(shí)間,單位是分,默認(rèn)值:60,如果要永遠(yuǎn)存活設(shè)置為0 -->  
  15.         <property name="idleMaxAge">240</property>  
  16.         <!-- 每個(gè)分區(qū)最大的連接數(shù) -->  
  17.         <property name="maxConnectionsPerPartition">30</property>  
  18.         <!-- 每個(gè)分區(qū)最小的連接數(shù) -->  
  19.         <property name="minConnectionsPerPartition">10</property>  
  20.         <!-- 分區(qū)數(shù) ,默認(rèn)值2,最小1,推薦3-4,視應(yīng)用而定-->  
  21.         <property name="partitionCount">3</property>  
  22.         <!-- 每次去拿數(shù)據(jù)庫(kù)連接的時(shí)候一次性要拿幾個(gè),默認(rèn)值:2 -->  
  23.         <property name="acquireIncrement">5</property>  
  24.         <!-- 每個(gè)分區(qū)釋放鏈接助理進(jìn)程的數(shù)量,默認(rèn)值:3,除非你的一個(gè)數(shù)據(jù)庫(kù)連接的時(shí)間內(nèi)做了很多工作,不然過(guò)多的助理進(jìn)程會(huì)影響你的性能 -->  
  25.         <property name="releaseHelperThreads">3</property>  
  26.     </default-config>  
  27. </bonecp-config>  

 

測(cè)試:

Java代碼  收藏代碼
  1. package test;  
  2.   
  3. import java.sql.Connection;  
  4. import java.sql.SQLException;  
  5.   
  6. import com.jolbox.bonecp.BoneCPDataSource;  
  7.   
  8. public class Demo {  
  9.   
  10.     public static void main(String[] args) {  
  11.         BoneCPDataSource dataSource = new BoneCPDataSource();  
  12.         dataSource.getConfigFile();  
  13.         Connection conn = null;  
  14.         try {  
  15.             long startTime = System.currentTimeMillis();  
  16.             for (int i = 0; i < 100; i++) {  
  17.                 conn = dataSource.getConnection();  
  18.             }  
  19.             long endTime = System.currentTimeMillis();  
  20.             System.out.println("====================用時(shí):" + (endTime - startTime) + "ms====================");  
  21.         } catch (SQLException e) {  
  22.             e.printStackTrace();  
  23.         } finally {  
  24.             try {  
  25.                 conn.close();  
  26.             } catch (SQLException e) {  
  27.                 e.printStackTrace();  
  28.             }  
  29.         }  
  30.     }  
  31. }  

 

 關(guān)于BoneCP更多的配置,可以參考

http://www./sxyx2008/archive/2011/03/16/346386.html

 

下面做一個(gè)BoneCP與Spring的集成,只要在beans.xml配置如下即可:

Xml代碼  收藏代碼
  1. <!-- 配置數(shù)據(jù)庫(kù)連接池 -->  
  2.     <bean id="dataSource" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close">  
  3.         <property name="driverClass" value="com.mysql.jdbc.Driver" />  
  4.         <property name="jdbcUrl" value="jdbc:mysql://localhost/spring" />  
  5.         <property name="username" value="root" />  
  6.         <property name="password" value="root" />  
  7.         <property name="idleConnectionTestPeriod" value="60" />  
  8.         <property name="idleMaxAge" value="240" />  
  9.         <property name="maxConnectionsPerPartition" value="30" />  
  10.         <property name="minConnectionsPerPartition" value="10" />  
  11.         <property name="partitionCount" value="3" />  
  12.         <property name="acquireIncrement" value="5" />  
  13.         <property name="statementsCacheSize" value="100" />  
  14.         <property name="releaseHelperThreads" value="3" />  
  15.     </bean>  

 

 

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多