`
- 浏览:
121339 次
- 性别:
- 来自:
郑州
-
由于项目需求的需要,我们引入了连接池。数据库连接池的最大好处是节省开销。我们采用了Hibernate,所以可以考虑hibernate自带的连接池机制,但是发现效率不高,而且Hibernate也推荐使用c3p0或Proxool连接池,在我们的项目中采用了Proxool。因此,出现了我下面的工作。
首先去官方网站下载jar包,地址:http://sourceforge.net/projects/proxool,我选用的是最新版本的proxool-0.9.0RC3.jar,查了一下网上有人说新版本兼容性不好可能会出问题,我测试了一下觉得没有。将此jar包让放入项目的classpath或者WEB-INF/lib下面。
然后在hibernate.cfg.xml平级的目录中新增加一个Proxool的配置文件Proxool.xml
<?xmlversion="1.0"encoding="UTF-8"?>
<!-- the proxool configuration can be embedded within your own application's.
Anything outside the "proxool" tag is ignored. -->
<something-else-entirely>
<proxool>
<alias>DBPool</alias>
<driver-url>
jdbc:mysql://localhost:3306/工程名?useUnicode=true&characterEncoding=UTF-8
</driver-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver-properties>
<propertyname="user"value="*** "/>
<propertyname="password"value="*** "/>
</driver-properties>
<house-keeping-sleep-time>90000</house-keeping-sleep-time>
<maximum-new-connections>20</maximum-new-connections>
<prototype-count>5</prototype-count>
<maximum-connection-count>100</maximum-connection-count>
<minimum-connection-count>10</minimum-connection-count>
</proxool>
</something-else-entirely>
其中有几个地方需要注意:
1)<alias>DBPool</alias>这个是给连接池取一个别名,在hibernate配置文件中将引用这个别名。
2)<driver-url>
jdbc:mysql://localhost:3306/工程名?useUnicode=true&characterEncoding=UTF-8
</driver-url>
这个是驱动的路径,我们的项目采用了mysql,使用其余数据库需要更改成对应的。还有需要注意的是工程名要以数据库名为准。
3)<driver-class>om.mysql.jdbc.Driver</driver-class>
这个是数据库驱动类,不同的数据库采用不同的驱动类,即使采用同一种数据库也有多种驱动类,所以一定要选取准确。
4) <driver-properties>
<propertyname="user"value="*** "/>
<propertyname="password"value="*** "/>
</driver-properties>
这个显示数据库的用户名和密码。
5)<house-keeping-sleep-time>90000</house-keeping-sleep-time>
这个显示proxool自动侦察各个连接状态的时间间隔(毫秒),侦察到空闲的连接就马上回收,超时的销毁
6)<maximum-new-connections>20</maximum-new-connections>
这个 指因未有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受
7)<prototype-count>5</prototype-count>
这个显示最少保持的空闲连接数
8)<maximum-connection-count>100</maximum-connection-count>
这个显示允许最大连接数,超过了这个连接,再有请求时,就排在队列中等候,最大的等待请求数由maximum-new-connections决定
9)<minimum-connection-count>10</minimum-connection-count>
这个显示最小连接数
最后需要注意的是不要在这个配置文件里面写注释,不然会报如下的错误:
org.hibernate.HibernateException: Proxool Provider unable to load JAXP configurator file: Proxool.xml
Caused by: org.logicalcobwebs.proxool.ProxoolException: Parsing failed.
Caused by: org.xml.sax.SAXParseException: The string "--" is not permitted within comments.
接下来就是在hibernate.cfg.xml中改配置即可
<?xmlversion='1.0'encoding='UTF-8'?>
<!DOCTYPEhibernate-configurationPUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<propertyname="hibernate.connection.provider_class">org.hibernate.connection.ProxoolConnectionProvider</property>
<propertyname="hibernate.proxool.pool_alias">DBPool</property>
<propertyname="hibernate.proxool.xml">Proxool.xml</property>
<propertyname="dialect">
org.hibernate.dialect.MySQLDialect
</property>
<propertyname="connection.driver_class">
com.mysql.jdbc.Driver
</property>
<mappingresource="hibernate.cfg.xml"/>
这里放Hibernate的映射文件
</session-factory>
</hibernate-configuration>
有一点很重要Proxool.xml路径一定要正确.
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
标题中的"proxool-0.9.1.jar"和"proxool-cglib.jar"是两个重要的Java档案文件,它们是Proxool项目的组件。Proxool是一个开源的数据库连接池解决方案,它允许开发者在Java应用程序中高效地管理数据库连接。数据库连接...
**Proxool配置参数说明** Proxool是一个开源的数据库连接池实现,它提供了一种灵活的方式来管理和控制数据库连接。在使用Proxool时,理解其配置参数是至关重要的,这些参数可以调整连接池的行为,以适应不同应用...
标题中的“hibernate3+ proxool-0.9.1配置”涉及到的是在Java开发中,使用Hibernate3 ORM框架与Proxool连接池的整合配置。Hibernate3是一款流行的持久层框架,它允许开发者用面向对象的方式来操作数据库,而Proxool...
标题中的"proxool-0.9.1.jar"和"proxool_cglib-0.9.1.jar"是两个Java库文件,它们是Proxool项目在0.9.1版本时的实现。Proxool是一个开源的数据库连接池,它提供了一种灵活且高效的解决方案来管理数据库连接。在Java...
标题 "proxool 的使用配置" 暗示我们将探讨一个名为 Proxool 的数据库连接池的配置和使用方法。Proxool 是一个轻量级、高效的开源 Java 数据库连接池,它提供了一种灵活的方式来管理和控制数据库连接。在这个主题中...
标题中的"proxool-0.9.1.zip"是一个压缩包文件,其中包含了与Proxool相关的组件。Proxool是Java的一个开源数据库连接池,它允许开发者在应用程序中更有效地管理和控制数据库连接。这个0.9.1版本可能是Proxool的一个...
标题 "proxool相关jar包.rar" 提供的信息表明,这个压缩包包含的是与Proxool相关的Java类库,主要用于数据库连接池管理。Proxool是一个开源的、基于Apache 2.0许可证的JDBC连接池实现,它为Java应用程序提供了一个...
Proxool是一个开源的、轻量级的Java数据库连接池实现,它提供了一种高效、灵活的方式来管理数据库连接。在某些场景下,为了保护敏感信息,如数据库的用户名和密码,我们需要对这些数据进行加密处理。"proxool连接池...
Oracle Proxool是一款开源的数据库连接池,它提供了一种高效、灵活的方式来管理数据库连接,以提高Java应用程序的性能和可扩展性。在Java应用程序中,数据库连接的创建和关闭是一个耗时的操作,通过使用连接池,我们...
the proxool configuration can be embedded within your own application's. Anything outside the "proxool" tag is ignored. --> - - <proxool> - <!-- 连接池的别名 --> <alias>DBPool</alias> - <!...
在这个组合中,数据库连接管理是一个关键环节,而Proxool作为一款轻量级的连接池库,常被用来优化数据库连接的使用。本文将详细介绍如何在Struts2+Spring+Hibernate的环境中配置Proxool连接池。 首先,理解Proxool...
`proxool连接池jar包`是一个包含Proxool数据库连接池技术的软件包。Proxool作为源码开放的项目,源自著名的开源平台SourceForge,它为Java开发者提供了一个高效且易于管理的数据库连接池解决方案。数据库连接池在多...
而Proxool是Oracle公司开源的一个数据库连接池组件,它提供了高效的数据库连接管理,有助于减少数据库资源的消耗,提高系统性能。本篇文章将深入探讨如何在Spring框架中配置和使用Proxool。 首先,我们需要了解...
Java项目中的Proxool是一个连接池管理框架,它允许开发者高效地管理数据库连接,从而提高应用程序的性能和可伸缩性。在非Web环境中使用Proxool,意味着我们需要在独立的Java应用程序中集成这个库来处理数据库连接。...
Proxool是一种Java数据库连接池技术,由SourceForge提供支持,作为开源项目,其设计目标是为Java应用提供一个健壮且易用的数据库连接管理方案。Proxool连接池特别强调易用性和监控功能,使得开发者能够容易地发现...
标题中的“proxool相关jar包”指的是用于Spring框架与DB2数据库交互的一种连接池管理工具——Proxool的Java库。Proxool是Apache软件基金会的一个项目,它提供了一个轻量级、高效的数据库连接池解决方案,能有效地...
**Proxool 数据源配置详解** Proxool是一款开源的Java数据库连接池,它提供了一种灵活、高效的方式来管理数据库连接。在Java应用程序中,数据源(DataSource)是用于管理和控制数据库连接的关键组件,它能有效地...
Oracle Proxool是一个轻量级的数据库连接池,它为Java应用程序提供了高效的数据库连接管理。在Java应用中,使用数据库连接池可以显著提高性能和资源利用率,因为它们减少了创建和销毁数据库连接的开销。Proxool是...
而Proxool是Apache的一个开源项目,它是一个轻量级的数据库连接池,能够有效地管理和优化数据库连接,提高应用的性能和可伸缩性。当我们需要在Spring框架中集成Proxool作为数据连接池时,需要进行一系列的配置工作。...