在Hibernate中配置Proxool连接池

本文详细介绍了如何在Hibernate中配置Proxool连接池,通过属性文件proxool.properties或proxool.xml来实现对MySQL数据库的连接管理,旨在提升数据库操作性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、配置Proxool(proxool.properties或者proxool.xml)

 

   (1)利用属性文件配置mysql

#jdbc-0.proxool.alias=BDPool
#jdbc-0.proxool.driver-class=org.gjt.mm.mysql.Driver
#jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/contestdb?

user=root&password=1234&useUnicode=true&characterEncoding=utf8
#jdbc-0.user=root
#jdbc-0.password=1234

jdbc-0.proxool.alias=hibernatea-oracle
jdbc-0.proxool.driver-class=oracle.jdbc.driver.OracleDriver
jdbc-0.proxool.driver-url=jdbc:oracle:thin:@172.16.2.6:1521:dbname
jdbc-0.user=username
jdbc-0.password=username
jdbc-0.proxool.maximum-connection-count=20
jdbc-0.proxool.house-keeping-test-sql=SELECT SYSDATE FROM DUAL;
#DEBUG, INFO, WARN, ERROR, FATAL.
jdbc-0.proxool.statistics-log-level=ERROR

 

(2)利用xml文件配置sqlserver

<?xml version="1.0" encoding="UTF-8"?>
<something-else-entirely>
<proxool>
<alias>BDPool</alias>
<dirver-url>jdbc:inetdae7:localhost:1433?database=motherol&amp;charset=GBK</dirver-url>
<driver-class>com.inet.tds.TdsDriver</driver-class>
<driver-properties>
<property name="user" value="sa"></property>
<property name="password" value="sa"></property>
</driver-properties>
<maximum-connection-count>100</maximum-connection-count>
<minimum-connection-count>20</minimum-connection-count>
<prototype-count>5</prototype-count>
<house-keeping-sleep-time>50000</house-keeping-sleep-time>
<maximum-active-time>300000</maximum-active-time>
<maximum-connection-lifetime>3600000</maximum-connection-lifetime>
<simultaneous-build-throttle>5</simultaneous-build-throttle>
<verbose>true</verbose>
<trace>true</trace>
<house-keeping-test-sql>select getdate()</house-keeping-test-sql>
</proxool>
</something-else-entirely>

 

2、在applicationContext.xml中配置SessionFactory

<beans>

 

<bean id="SessionFactory"
  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  <!-- <property name="dataSource">
   <ref bean="dataSourse" />
   </property>
  -->
  <property name="hibernateProperties">
   <props>
    <prop key="hibernate.dialect">
     org.hibernate.dialect.SQLServerDialect
    </prop>
    <prop key="hibernate.show_sql">true</prop>
    
    <!-- <prop key="hibernate.proxool.existing_pool">true</prop> -->
    
    <prop key="hibernate.cglib.use_reflection_optimizer">
     true
    </prop>
    <prop key="hibernate.connection.provider_class">
     org.hibernate.connection.ProxoolConnectionProvider
    </prop>

<!-- 这里我是把属性文件或xml文件放在类文件的根目录下的-->
    <prop key="hibernate.proxool.xml">proxool.xml</prop>

<!-- 设置连接池别名,必须和配置文件中的别名一致 -->
    <prop key="hibernate.proxool.pool_alias">DBPool</prop>
    
    <!-- 缓存设置默认是EhCache -->
    <prop key="hibernate.cache.provider_class">
     org.hibernate.cache.EhCacheProvider
    </prop>
    <!-- enable the query cache -->
    <prop key="hibernate.cache.use_query_cache">true</prop>

    <!-- store the second-level cache entries in a more human-friendly format -->
    <prop key="hibernate.cache.use_structured_entries">
     true
    </prop>
   </props>
  </property>

<!-- 映射到具体的类 -->
  <property name="mappingResources">
   <list>
    <value>admin/model/Admin.hbm.xml</value>
   </list>
  </property>
 </bean>

<!--下面是调用sessionFactory-->

<bean id="AdminDAO" class="admin.model.AdminDAO">
  <property name="sessionFactory">
   <ref bean="SessionFactory" />
  </property>
 </bean>
 <bean name="/saveadmin"
  class="admin.controllor.action.SaveadminAction">
  <property name="adminDAO">
   <ref bean="AdminDAO" />
  </property>
 </bean>

 

</beans>
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值