Hibernate连接池的配置方式

本文主要内容:Hibernate 连接池有三种配置方式:dbcp , c3p0 , proxool。URL的多种指定方式连接池监控,上班第二天,看到公司的Hibernate连接池配置文件在写法上,跟我以前的不一样,就去研究了哈,得出的结果如下。

在Hibernate3.0中,已经不再支持dbcp了,Hibernate的作者在Hibernate.org中,明确指出在实践中发现dbcp有BUG,在某些种情会产生很多空连接不能释放,所以抛弃了对dbcp的支持。

一、Hibernate 连接池:C3P0 配置

 
 
 
  1.  
  2. "-//Hibernate/Hibernate Configuration DTD 3.0//EN"  
  3. "http://Hibernate.sourceforge.net/Hibernate-configuration-3.0.dtd"> 
  4.  
  5.  
  6.  
  7.  
  8. org.Hibernate.transaction.JDBCTransactionFactory  
  9.  
  10.  
  11. 50 
  12. false 
  13.  
  14. thread 
  15.  
  16. true 
  17. true 
  18.  
  19. org.Hibernate.dialect.Oracle9Dialect 
  20.  
  21. oracle.jdbc.driver.OracleDriver 
  22. 0804 
  23. 0804 
  24. jdbc:oracle:thin:@192.168.0.200:1521:orcl 
  25.  
  26. 5000 
  27. 100 
  28. 3000 
  29. false 
  30.  
  31.  
  32.  
  33.  
  34.  

二、Hibernate 连接池:使用proxool

 
 
 
  1.  
  2.  
  3.  name="show_sql">true 
  4.  name="dialect"> 
  5. org.Hibernate.dialect.MySQLDialect  
  6.  
  7.  
  8.  
  9.  name="proxool.pool_alias">pool1 
  10.  
  11.  name="proxool.xml">ProxoolConf.xml 
  12.  name="connection.provider_class"> 
  13. org.Hibernate.connection.ProxoolConnectionProvider  
  14.  
  15. ....  
  16.  
  17.  resource="com/ket/ruan/so/entity/User.hbm.xml"/> 
  18. ....  
  19.  

1.ProxoolConf.xml:xml文件放在同级目录中,需要 proxool-0.8.3.jar。

 
 
 
  1.  version="1.0" encoding="gb2312"?> 
  2.  
  3.  
  4. pool1 
  5.  
  6. jdbc:mysql://tpdb:3306/tpdb  
  7.  
  8. com.mysql.jdbc.Driver 
  9.  
  10.  name="user" value="username"/> 
  11.  name="password" value="password"/> 
  12.  name="schema" value="tpdb"/>  
  13.  
  14.  name="autoReconnect" value="true"/> 
  15.  
  16.  
  17. 10 
  18.  
  19. 700 
  20.  
  21. 350 
  22.  
  23. 900000 
  24.  
  25. 14400000 
  26.  
  27. true 
  28.  
  29. select sysdate() from dual 
  30.  
  31.  

2.数据库名可以这样指定

 
 
 
  1.  name="connection.url"> 
  2. jdbc:sqlserver://localhost:1433;DatabaseName=supermarket 
  3.  

3.URL 还可以传参数

 
 
 
  1.  name="connection.driver_class">org.gjt.mm.mysql.Driver 
  2.  name="connection.url"> 
  3. jdbc:mysql://localhost:3306/struts?useUnicode=true&characterEncoding=GBK 
  4.  

目前,proxool用法,被大部分人认为是***秀的。

4.连接池监控

1).在web.xml中加上下面这段

 
 
 
  1.  
  2.  proxool  
  3.  org.logicalcobwebs.proxool.admin.servlet.AdminServlet  
  4.  
  5.  
  6.  
  7.  proxool  
  8.  /Admin/proxool/  
  9.  

2).http://localhost:8080/testHibernate/Admin/proxool
就可以监控到连接池的状况了!

本文题目:Hibernate连接池的配置方式
浏览地址:http://www.shufengxianlan.com/qtweb/news36/383886.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联