Hibernate连接配置方法剖析
创始人
2024-06-07 21:10:53
0

Hibernate有很多值得学习的地方,这里我们主要介绍Hibernate连接配置方法,包括介绍XX等方面。

在Hibernate3.0中,已经不再支持dbcp了,Hibernate的作者在Hibernate.org中,明确指出在实践中发现dbcp有 BUG,在某些种情会产生很多空连接不能释放,所以抛弃了对dbcp的支持。至于c3p0,有评论说它的算法不是***的,c3p0占用资源比较大,效率也不高。 proxool不少行家推荐使用,而且暂时来说,是负面评价是最少的一个。

以连接MySQl为例介绍三种Hibernate连接配置方法。

  1.  
  2.  name="connection.driver_class">org.gjt.mm.mysql.Driver  
  3.  
  4.  name="connection.url">jdbc:mysql:
  5. //localhost:3306/struts?useUnicode=true&characterEncoding=GBK 
  6.  
  7.  name="connection.username">root 
  8.  name="connection.password">8888   

上面的一段配置,在c3p0和dbcp中,都是必需的,因为Hibernate会根据上述的配置来生成connections,再交给c3p0或dbcp管理.但是,proxool则不能。

1.C3P0

只需在Hibernate.cfg.xml中加入

  1.  name="c3p0.min_size">5 
  2.  name="c3p0.max_size">30 
  3.  name="c3p0.time_out">1800 
  4.  name="c3p0.max_statement">50 

还有在classespath中加入c3p0-0.8.4.5.jar

2.dbcp

在Hibernate.cfg.xml中加入

  1.  name="dbcp.maxActive">100 
  2.  name="dbcp.whenExhaustedAction">1 
  3.  name="dbcp.maxWait">60000 
  4.  name="dbcp.maxIdle">10 
  5.  name="dbcp.ps.maxActive">100 
  6.  name="dbcp.ps.whenExhaustedAction">1 
  7.  name="dbcp.ps.maxWait">60000 
  8.  name="dbcp.ps.maxIdle">10  

还有在classespath中加入commons-pool-1.2.jar 和commons-dbcp-1.2.1.jar.

3.proxool

在Hibernate.cfg.xml中加入

  1.  name="proxool.pool_alias">pool1 
  2.  name="proxool.xml">ProxoolConf.xml 
  3.  name="connection.provider_class">net.sf.
    hibernate.connection.ProxoolConnectionProvider 

然后,在和Hibernate.cfg.xml同一个目录下,加一个ProxoolConf.xml文件,内容为

  1.  version="1.0" encoding="utf-8"?> 
  2.  
  3.  
  4.  
  5. pool1 
  6.  
  7. jdbc:mysql:
  8. //localhost:3306/struts?useUnicode=true&characterEncoding=GBK 
  9. org.gjt.mm.mysql.Driver 
  10.  
  11.  name="user" value="root"/> 
  12.  name="password" value="8888"/> 
  13.  
  14.  
  15. 90000 
  16.  
  17. 20 
  18.  
  19. 5 
  20.  
  21. 100 
  22.  
  23. 10 
  24.  
  25.   

并在classespath中加入proxool-0.8.3.jar

如果用的是Hibernate3.1,在myeclipse中导入Hibernate3.1包时,同时导入advanced support 类库,则里面已经有好几个连接池可以用了,如c3p0,proxool等,只要稍微配置下就可以,配置下日志(log4j.properties),你就可以详细的看到连接池运行的过程了。以上介绍Hibernate连接配置方法。

【编辑推荐】

  1. 描述Hibernate检查id字段
  2. Hibernate Template简单描述
  3. Hibernate DetachedCriteria学习经验
  4. 概述Hibernate equals()方法
  5. Hibernate使用Person对象

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...