Hibernate 连接池的三种配置方式

来源:互联网 发布:淘宝客服的连接地址 编辑:程序博客网 时间:2024/05/17 23:27
本文主要内容: Hibernate 连接池的三种配置方式:dbcp , c3p0 , proxool URL的多种指定方式 连接池监控 上班第二天,看到公司的Hibernate配置文件在写法上,跟我以前的不一样,就去研究了哈,得出的结果如下。 在hibernate3.0中,已经不再支持dbcp了,hibernate的作者在hibernate.org中, 明确指出在实践中发现dbcp有BUG,在某些种情会产生很多空连接不能释放, 所以抛弃了对dbcp的支持。 1 =================== C3P0 配置 ============================= Xml代码 org.hibernate.transaction.JDBCTransactionFactory 50 false thread true true org.hibernate.dialect.Oracle9Dialect oracle.jdbc.driver.OracleDriver 0804 0804 jdbc:oracle:thin:@192.168.0.200:1521:orcl 2 2 5000 100 3000 2 false 。。。。。 org.hibernate.transaction.JDBCTransactionFactory 50 false thread true true org.hibernate.dialect.Oracle9Dialect oracle.jdbc.driver.OracleDriver 0804 0804 jdbc:oracle:thin:@192.168.0.200:1521:orcl 2 2 5000 100 3000 2 false 。。。。。 2 ============= 使用 proxool ============================= Xml代码 true org.hibernate.dialect.MySQLDialect pool1 ProxoolConf.xml org.hibernate.connection.ProxoolConnectionProvider .... .... true org.hibernate.dialect.MySQLDialect pool1 ProxoolConf.xml org.hibernate.connection.ProxoolConnectionProvider .... .... ------------ProxoolConf.xml-------------------- xml 文件放在同级目录中 需要 proxool-0.8.3.jar Xml代码 pool1 jdbc:mysql://tpdb:3306/tpdb com.mysql.jdbc.Driver 90000 10 10 700 350 900000 14400000 true select sysdate() from dual pool1 jdbc:mysql://tpdb:3306/tpdbcom.mysql.jdbc.Driver 90000101070035090000014400000trueselect sysdate() from dual============ 数据库名可以这样指定 ============== Xml代码 jdbc:sqlserver://localhost:1433;DatabaseName=supermarket jdbc:sqlserver://localhost:1433;DatabaseName=supermarket==============URL 还可以传参数=================== Xml代码 org.gjt.mm.mysql.Driver jdbc:mysql://localhost:3306/struts?useUnicode=true&characterEncoding=GBK org.gjt.mm.mysql.Driverjdbc:mysql://localhost:3306/struts?useUnicode=true&characterEncoding=GBK目前,proxool用法,被大部分人认为是最优秀的。 =========== 连接池监控 =================== 1.在web.xml中加上下面这段 Xml代码 proxool org.logicalcobwebs.proxool.admin.servlet.AdminServlet proxool /Admin/proxool/ proxool org.logicalcobwebs.proxool.admin.servlet.AdminServlet proxool /Admin/proxool/ 2.http://localhost:8080/testhibernate/Admin/proxool 就可以监控到连接池的状况了!
原创粉丝点击