首先去官方网站下载proxool 0.9.1的zip包
lib
+|proxool-0.9.1.jar
+|proxool-cglib.jar
使用是应再导入commons-logging.jar
这里使用proxool.xml 配置,不会写的可以在zip包的api中查找。配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<something-else-entirely>
<!-- 此配置的注解针对的是proxool 0.9.1 -->
<proxool>
<!-- 别名 -->
<alias>test</alias>
<!-- 数据库连接的URL -->
<driver-url>jdbc:mysql://localhost:3306/temp</driver-url>
<!-- 数据库驱动类 -->
<driver-class>org.gjt.mm.mysql.Driver</driver-class>
<driver-properties>
<!-- 数据库的用户名 -->
<property name="user" value="root"/>
<!-- 数据库的密码 -->
<property name="password" value="root"/>
</driver-properties>
<!-- 最大连接数,默认为15 -->
<maximum-connection-count>20</maximum-connection-count>
<!-- 最小连接数,默认为5 -->
<minimum-connection-count>2</minimum-connection-count>
<!-- 如果housekeeper 检测到某个线程的活动时间大于这个数值.它将会杀掉这个线程.
所以确认一下你的服务器的带宽.然后定一个合适的值,默认为5分钟,此处设置为1分钟,以毫秒计 -->
<maximum-active-time>60000</maximum-active-time>
<!-- 最大连接生命周期 ,默认为4小时,此处设置为5小时,以毫秒计-->
<minimum-connection-count>18000000</minimum-connection-count>
<!-- 如果发现了空闲的数据库连接.house keeper 将会用这个语句来测试.
这个语句最好非常快的被执行.如果没有定义,测试过程将会被忽略。 -->
<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
<!-- 以上是常规配置 -->
<!-- 下面的是其余的一些配置,没有用过都是在网上搜到的,记录下来以备使用 -->
<!--
//house keeper 保留线程处于睡眠状态的最长时间,house keeper 的职责就是检查各个连接的状态,
//并判断是否需要销毁或者创建.默认为30秒,此处设置为40秒,以毫秒计。
<proxool:house-keeping-sleep-time>40000</proxool:house-keeping-sleep-time>
//详细信息设置。 参数 bool 值
<proxool:verbose>true</proxool:verbose>
//如果为true,那么每个被执行的SQL语句将会在执行期被log记录(DEBUG LEVEL).
//你也可以注册一个ConnectionListener (参看ProxoolFacade)得到这些信息
<proxool:trace>true</proxool:trace>
//它是一个逗号分割的信息片段.当一个SQL异常发生时,他的异常信息将与这个信息片段进行比较.
//如果在片段中存在,那么这个异常将被认为是个致命错误 (Fatal SQL Exception ).
//这种情况下,数据库连接将要被放弃.无论发生什么,这个异常将会被重掷以提供给消费者.
//用户最好自己配置一个不同的异常来抛出.
<proxool:fatal-sql-exception>Fatal error</proxool:fatal-sql-exception>
//连接池中可用的连接数量.如果当前的连接池中的连接少于这个数值.
//新的连接将被建立(假设没有超过最大可用数).
//例如.我们有3个活动连接2个可用连接, 而我们的prototype-count是4,
//那么数据库连接池将试图建立另外2个连接.
//这和 minimum-connection-count不同.
//minimum-connection-count把活动的连接也计算在内.
//prototype-count 是spare connections 的数量
<proxool:prototype-count>2</proxool:prototype-count>
-->
</proxool>
</something-else-entirely>
基于web的应用接着配置web.xml,添加管理员组建的配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>
org.logicalcobwebs.proxool.configuration.ServletConfigurator
</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<param-value>WEB-INF/proxool.xml</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet>
<servlet-name>Admin</servlet-name>
<servlet-class>
org.logicalcobwebs.proxool.admin.servlet.AdminServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Admin</servlet-name>
<url-pattern>/admin</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
3.在index.jsp中使用jdbc连接数据库
<%@ page contentType="text/html;charset=UTF-8" import="java.sql.*"
pageEncoding="UTF-8"%>
<html>
<head>
<title></title>
</head>
<body>
<%
Connection conn = null;
try {
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
conn = DriverManager.getConnection("proxool.test");
out.println("打开一个连接-------------");
out.println(conn);
} catch (Exception e) {
out.println(e);
} finally {
try {
conn.close();
} catch (Exception e) {
out.println(e);
}
}
%>
</body>
</html>
4.附录使用propertie文件配置
也可以采用 properties, 在程序 PropertyConfigurator.configure("proxool.properties"); 文件设置
WEB-INF/proxool.properties
jdbc-0.proxool.alias=property-test
jdbc-0.proxool.driver-url=jdbc:mysql://localhost:3306/test
jdbc-0.proxool.driver-class=org.gjt.mm.mysql.Driver
jdbc-0.user=root
jdbc-0.password=password
jdbc-0.proxool.maximum-connection-count=10
jdbc-0.proxool.house-keeping-test-sql=select CURRENT_DATE
---------properties方式没有测试过
陆续更新,hibernate中使用proxool的配置,新人备忘使用,勿拍
分享到:
相关推荐
标题中的“hibernate3+ proxool-0.9.1配置”涉及到的是在Java开发中,使用Hibernate3 ORM框架与Proxool连接池的整合配置。Hibernate3是一款流行的持久层框架,它允许开发者用面向对象的方式来操作数据库,而Proxool...
例如,在Spring框架中,可以使用 `<bean>` 标签和 `proxool` 的属性来配置Proxool连接池。 **总结** "proxool-0.9.1.jar" 和 "proxool_cglib-0.9.1.jar" 是针对数据库连接池的Java库,其中Proxool负责管理数据库...
Spring框架中的DataSource配置使得Proxool的集成变得简单,而proxool-0.9.1.jar和proxool-cglib.jar是运行Proxool所需的核心库。在实际应用中,正确理解和配置这些参数以及库文件,可以优化数据库访问性能,提高系统...
标题中的"proxool-0.9.1.jar"和"proxool-cglib.jar"是两个重要的Java档案文件,它们是Proxool项目的组件。Proxool是一个开源的数据库连接池解决方案,它允许开发者在Java应用程序中高效地管理数据库连接。数据库连接...
**Proxool 0.9.1:数据库连接池详解** `Proxool` 是一个开源的、基于Java的数据库连接池,它提供了一种高效、灵活的方式来管理和控制数据库连接。在0.9.1版本中,这个工具为开发者提供了更稳定的性能和优化的资源...
Struts2.2.3、Spring2.5.6、Hibernate3.2和Proxool0.9.1是四个重要的Java技术组件,它们在Web应用程序开发中扮演着关键角色。这个压缩包文件包含了这些技术的集成示例,旨在帮助开发者理解和实践如何将它们有效地...
在实际应用中,可以通过Java代码来初始化和使用Proxool,例如使用`JAXPConfigurator`来加载配置文件,并通过`ConnectionFactory`获取数据库连接。测试类通常会包含这样的逻辑,以验证连接池的配置和功能。 总的来说...
Proxool提供的测试代码可以帮助我们了解其内部工作机制,也可以作为示例来学习如何正确使用和配置Proxool。 7. **与其他连接池的对比** Proxool虽然已被其他更成熟的连接池(如HikariCP、C3P0、DBCP)取代,但其...
标题 "Hibernate3.5.1+Proxool0.9.1+Oracle10g2实现关键" 提供了一个关于整合三个技术的实践场景:Hibernate 3.5.1(一个流行的Java对象关系映射框架),Proxool 0.9.1(一个数据库连接池)以及Oracle 10g 2(一种...
"Proxool-0.9.1-source"是Proxool的一个特定版本的源代码包,主要用于数据库连接池管理。Proxool是一个开源的、基于Java的数据库连接池实现,它提供了一种灵活且可扩展的方式来管理和优化数据库连接。在这个0.9.1...
5.修正了ProxoolDataSource这个bean在spring配置中几个property不正确的问题。 houseKeepingSleepTime maximumConnectionLifetime overloadWithoutRefusalLifetime recentlyStartedThreshold 这几个参数设置...
总之,`proxool-0.9.1.tar.gz`是一个Java开源数据库连接池的发布包,包含了所有必要的文件以便于开发、部署和使用。对于Java开发者来说,理解并熟练使用Proxool可以帮助他们优化应用程序对数据库的访问,提升系统...
解决在使用spring 配置 proxool 0.9.1时碰到‘houseKeepingSleepTime’is not writeable or has an invalid setter method的问题。 方法是将org.logicalcobwebs.proxool.ProxoolDataSource 中houseKeepingSleepTime...
proxool0.9.1jar包,Hibernate3.x适用,用于Hibernate连接池的配置
在实际使用中,用户可能需要查看这些资源以了解如何配置和使用Proxool。 数据库连接池是现代Java应用服务器的关键组件,Proxool提供了如下主要功能: 1. **连接复用**:避免频繁创建和销毁数据库连接,减少系统...
总的来说,`proxool-0.9.1.jar`和`commons-logging.jar`的结合使用,为Java应用程序提供了高效、灵活的数据库连接管理和日志记录能力,是构建企业级应用的重要组件。在实际开发中,我们应根据项目需求和环境,合理地...
描述中提到的"proxool-0.9.1.jar,proxool-cglib.jar,proxool-0.8.3.jar"是Proxool的不同版本和一个依赖库。`proxool-0.9.1.jar`是Proxool的主要库,可能包含了0.9.1版本的API和实现;`proxool-cglib.jar`是CGLIB...
总结来说,Proxool是一个功能强大且易于使用的Java数据连接池实现,通过合理配置和使用,可以极大地提升数据库驱动的应用程序性能,并降低资源消耗。在开发和运维过程中,理解并掌握其工作原理和配置方法,对于优化...
Proxool的加密功能允许我们在配置中使用加密的用户名和密码,确保即使配置文件被泄露,攻击者也无法直接获取到明文的数据库凭据。这增强了系统的安全性,降低了数据泄露的风险。 在提供的压缩包文件中,可能包含了...