有关hibernate的连接池

最近在研究hibernate,特此来记录一下

hibernate虽然有自己内置的連接池,但同时也支持其它的連接池。

连接池就我所知,大体分三种:

1.C3P0连接池。是最早认识的,也是比较多的一种。可参考http://sourceforge.net/projects/c3p0 .此技术使用了ComboPooledDataSource.示例如下:

    ComboPooledDataSource cpds=new ComboPooledDataSource();

    cpds.setDriverClass("org.gjt.mm.mysql.Driver");

    cpds.setJdbcUrl("jdbc:mysql://localhost:3306/hibernate");

   cpds.setUser("root");

  cpds.setPassword("");

  Connection con=cpds.getConnection();

  Statment sm=con.createStatement();

 String query="select username from users";

 ResultSet rs=sm.executeQuery(query);

 While(rs.next()){

    String cpu=rs.getString("cpu"); 

   System.out.println(cpu);

}

con.close;

}

2.Tomcat连接池

3.proxool连接池。网上说这种技术比较主流。配置不算很难。就是配置2个文件.

(参考http://blog.csdn.net/zunshanke2004/archive/2006/07/27/984598.aspx)

 hibernate.cfg.xml

  <session-factory >
     <property name="hibernate.connection.provider_class">
          org.hibernate.connection.ProxoolConnectionProvider
     </property>

     <property name="hibernate.proxool.pool_alias">MYPoolName</property>
     <property name="hibernate.proxool.xml">proxool.xml</property>
     <property name="show_sql">true</property>
     <property name="dialect">org.hibernate.dialect.SQLServerDialect</property>

     <mapping resource="userinfo.hbm.xml"/>
</session-factory>

 

 proxool.xml

 <proxool>

<alias>MYPoolName</alias>   <!--连接池的别名-->

<driver-url>
    jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=testhibernate;SelectMethod=cursor
</driver-url>

<!--JDBC驱动程序-->
<driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>
<driver-properties>
   <property name="user" value="sa"/>
   <property name="password" value="123"/>
</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>

</proxool>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值