配置Hibernate使用Proxool连接池

来源:互联网 发布:电脑数据存储方案 编辑:程序博客网 时间:2024/04/27 15:09

第一步:配置proxool.xml

Xml代码

  1. <?xml version="1.0" encoding="UTF-8"?>    
  2. <something-else-entirely>  
  3.     <proxool>  
  4.     <!--连接池的别名-->  
  5.     <alias>test</alias>  
  6.     <!--proxool只能管理由自己产生的连接-->  
  7.     <driver-url>jdbc:jtds:sqlserver://localhost:1433/userinfo</driver-url>  
  8.     <!-- JDBC驱动程序-->  
  9.     <driver-class>net.sourceforge.jtds.jdbc.Driver</driver-class>  
  10.     <driver-properties>  
  11.      <property name="user" value="sa"/>  
  12.      <property name="password" value="sa"/>  
  13.       <property name="useUnicode" value="true"/>    
  14.       <property name="characterEncoding" value="utf-8"/>    
  15.     </driver-properties>    
  16.     <!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁-->    
  17.     <house-keeping-sleep-time>90000</house-keeping-sleep-time>  
  18.     <!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受-->    
  19.     <maximum-new-connections>20</maximum-new-connections>  
  20.     <!-- 最少保持的空闲连接数-->    
  21.     <prototype-count>5</prototype-count>  
  22.     <!-- 允许最大连接数,超过了这个连接,再有请求时,就排在队列中等候,最大的等待请求数由maximum-new-connections决定-->    
  23.     <maximum-connection-count>100</maximum-connection-count>  
  24.     <!-- 最小连接数-->  
  25.     <minimum-connection-count>10</minimum-connection-count>  
  26.     <!-- 用于检connection是否处于连接状态 -->  
  27.     <house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>    
  28.     </proxool>    
  29. </something-else-entirely>  

<?xml version="1.0" encoding="UTF-8"?>

<something-else-entirely>

  <proxool>

  <!--连接池的别名-->

  <alias>test</alias>

  <!--proxool只能管理由自己产生的连接-->

  <driver-url>jdbc:jtds:sqlserver://localhost:1433/userinfo</driver-url>

  <!-- JDBC驱动程序-->

  <driver-class>net.sourceforge.jtds.jdbc.Driver</driver-class>

  <driver-properties>

   <property name="user" value="sa"/>

   <property name="password" value="sa"/>

    <property name="useUnicode" value="true"/>

      <property name="characterEncoding" value="utf-8"/>

  </driver-properties>

  <!-- proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁-->

  <house-keeping-sleep-time>90000</house-keeping-sleep-time>

  <!-- 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受-->

  <maximum-new-connections>20</maximum-new-connections>

  <!-- 最少保持的空闲连接数-->

  <prototype-count>5</prototype-count>

  <!-- 允许最大连接数,超过了这个连接,再有请求时,就排在队列中等候,最大的等待请求数由maximum-new-connections决定-->

  <maximum-connection-count>100</maximum-connection-count>

  <!-- 最小连接数-->

  <minimum-connection-count>10</minimum-connection-count>

  <!-- 用于检connection是否处于连接状态 -->

  <house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>

  </proxool>

</something-else-entirely>



第二步:配置hibernate.cfg.xml

Xml代码

  1. <?xml version='1.0' encoding='UTF-8'?>  
  2. <!DOCTYPE hibernate-configuration PUBLIC   
  3.           "-//Hibernate/Hibernate Configuration DTD 3.0//EN"   
  4.           "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">  
  5. <hibernate-configuration>  
  6.     <session-factory>  
  7.         <!--指定连接的语言-->  
  8.         <property name="dialect">  
  9.             org.hibernate.dialect.SQLServerDialect   
  10.         </property>  
  11.             
  12.         <!--是否将运行期生成的SQL输出到日志以供调试-->  
  13.         <property name="show_sql">true</property>  
  14.         <property name="format_sql">true</property>  
  15.   
  16.         <!-- 表明使用的是proxool -->  
  17.         <property name="connection.provider_class">  
  18.             org.hibernate.connection.ProxoolConnectionProvider   
  19.         </property>  
  20.         <!-- 指定proxool的配置文件的名字及位置 -->  
  21.         <property name="proxool.xml">proxool.xml</property>  
  22.         <!-- 指定proxool文件中配置的别名 -->  
  23.         <property name="proxool.pool_alias">test</property>    
  24.   
  25.         <mapping resource="com/lovo/po/UserPO.hbm.xml"/>  
  26.     </session-factory>  
  27. </hibernate-configuration>  

<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE hibernate-configuration PUBLIC

          "-//Hibernate/Hibernate Configuration DTD 3.0//EN"

          "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

<session-factory>

  <!--指定连接的语言-->

  <property name="dialect">

   org.hibernate.dialect.SQLServerDialect

  </property>

   

  <!--是否将运行期生成的SQL输出到日志以供调试-->

  <property name="show_sql">true</property>

  <property name="format_sql">true</property>

 

  <!-- 表明使用的是proxool -->

  <property name="connection.provider_class">

   org.hibernate.connection.ProxoolConnectionProvider

  </property>

  <!-- 指定proxool的配置文件的名字及位置 -->

  <property name="proxool.xml">proxool.xml</property>

  <!-- 指定proxool文件中配置的别名 -->

  <property name="proxool.pool_alias">test</property>

 

  <mapping resource="com/lovo/po/UserPO.hbm.xml"/>

</session-factory>

</hibernate-configuration>

proxool连接池应用示例.rar (1.1 MB)

原创粉丝点击