`
mymobile
  • 浏览: 182990 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

proxool应用详解

阅读更多

 

最近开发时用到 proxool 数据库连接池框架,这个框架 完全可配置、快速、成熟、健壮。可以透明地为你现存的 JDBC 驱动程序增加连接池功能。

先介绍下什么是 proxool 吧。我也是从网上拷贝的 :

Proxool 是一种Java 数据库连接池技术。是sourceforge 下的一个开源项目, 这个项目提供一个健壮、易用的连接池,最为关键的是这个连接池提供监控的功能,方便易用,便于发现连接泄漏的情况。 目前是和DBCP 以及C3P0 一起,最为常见的三种JDBC 连接池技术。 日前,Hibernate 官方宣布由于Bug 太多不再支持DBCP ,而推荐使用 ProxoolC3P0

官网地址: http://proxool.sourceforge.net/ 目前最新版本是:0.9.1

现在我们 web 项目

第一步 : 环境配置

我们把 proxool 用的 jar 包和数据库的驱动包拷贝到 WEB-INF/lib 下面。

第二步 : 配置文件配置

         我们建一个 proxool.xml 文件,文件名可以随意,不过大家都用这个了,约定俗成吧。配置文件如下,方便以后拷贝使用 :

<? xml version = "1.0" encoding = "UTF-8" ?>

    < something-else-entirely >

       < proxool >

           <!-- 数据源的别名 -->

           < alias > dbtest </ alias >

           <!--url 连接串 -->

           < driver-url >

jdbc:oracle:thin:@10.135.6.155:1521:oanet

</ driver-url >

           <!-- 数据库 jdbc 驱动类 -->

           < driver-class > oracle.jdbc.driver.OracleDriver </ driver-class >

           < driver-properties >

              <!-- 用户名 -->

              < property name = "user" value = "AMS_TEST" />

              <!-- 密码 -->

              < property name = "password" value = "1" />

           </ driver-properties >

           <!-- 最大连接数 ( 默认 5 ), 超过了这个连接数 , 再有请求时 , 就排在队列中等候 ,

              最大的等待请求数由 maximum-new-connections 决定 -->

           < maximum-connection-count > 100 </ maximum-connection-count >

           <!-- 最小连接数 ( 默认 2 )-->

           < minimum-connection-count > 10 </ minimum-connection-count >

           <!--proxool 自动侦察各个连接状态的时间间隔 ( 毫秒 ), 侦察到空闲的连接就马上回收

                         , 超时的销毁 默认 30 -->

           < house-keeping-sleep-time > 90000 </ house-keeping-sleep-time >

           <!-- 没有空闲连接可以分配而在队列中等候的最大请求数 , 超过这个请求数的

                         用户连接就不会被接受 -->

           < maximum-new-connections > 10 </ maximum-new-connections >

           <!-- 最少保持的空闲连接数 ( 默认 2 )-->

           < prototype-count > 5 </ prototype-count >

           <!-- 在使用之前测试 -->

           < test-before-use > true </ test-before-use >

           <!-- 用于保持连接的测试语句 -->

           < house-keeping-test-sql > select sysdate from dual </ house-keeping-test-sql >

       </ proxool >

    </ something-else-entirely >

 

可以配置多个 something-else-entirely 标签来配置多个池。

接下来我们在 web.xml 中注册 proxool ,让 tomcat 启动时就加载 proxool 配置文件初始化 : 我们在 web.xml 文件加入以下配置 :

< servlet >

    < servlet-name > ServletConfigurator </ servlet-name >

  <!-- ServletConfigurator: 加载并初始化 proxool.xml 文件 , 因为它是连接数据库的 . 其他很多模块都用到数据 , 所以必须首先加载它 -->

< 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: 数值越小,就会先被加载初始化-->

    < load-on-startup > 1 </ load-on-startup >

  </ servlet >

  < servlet >

    < servlet-name > proxool </ servlet-name >

    < servlet-class > org.logicalcobwebs.proxool.admin.servlet.AdminServlet </ servlet-class >

  </ servlet >

  < servlet-mapping >

< servlet-name > proxool </ servlet-name >

<!—- 通过这个访问路径用来 监控数据库连接池的连接情况 -->

    < url-pattern > /proxool </ url-pattern >

  </ servlet-mapping >

当然你也可以配置受保护域,只让 TOMCAT 管理员才能查看连接池的信息 .

都配置好了。其实 proxool 提供了很多的配置方式 : properties,xml,java.util.Properties 等来配置,配置方式多样化,大家可以参考官方文档 .

第三步:测试。

     我在 java 代码中进行测试的时候,就是在 java 类中写个 main 方法时,总是会出现 : Attempt to refer to a unregistered pool by its alias 'XXX'(XXX 连接池的别名)

网上查了下说是: 连接池的应用本来就是要通过服务器调用的,如果你在java 文件中调用,就没有涉及到服务器,这样就会报错了!

如果你在java 文件中用下面这种方式加载连接池是可用的:

Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");

Connection conn = DriverManager.getConnection("proxool. 别名:driver:url"," 用户名"," 密码");

试了下确实可以呵。

 

 

3
3
分享到:
评论

相关推荐

    proxool配置详解

    标题中的“proxool配置详解”指的是Proxool,这是一个开源的数据库连接池管理工具,它在Java应用程序中用于管理和优化数据库连接。Proxool的主要作用是提高应用性能,通过复用已建立的数据库连接,避免频繁创建和...

    Proxool-数据源配置详解

    **Proxool 数据源配置详解** Proxool是一款开源的Java数据库连接池,它提供了一种灵活、高效的方式来管理数据库连接。在Java应用程序中,数据源(DataSource)是用于管理和控制数据库连接的关键组件,它能有效地...

    proxool配置参数说明及proxool-0.9.1相关jar包及spring配置方法

    在使用Proxool时,理解其配置参数是至关重要的,这些参数可以调整连接池的行为,以适应不同应用场景的需求。以下是一些主要的Proxool配置参数: 1. **driver-url**: 这个参数指定数据库驱动的URL,例如`jdbc:mysql:...

    proxool连接池配置详解

    ### Proxool连接池配置详解 #### 一、概述 Proxool是一个开源的轻量级Java数据库连接池实现,其主要目标是替代常见的数据库连接池解决方案,如C3P0或DBCP,并且提供了更加灵活和易于配置的特性。在实际应用中,...

    spring proxool配置资料

    4. **Proxool属性详解**:上述配置中的属性如`maxActive`、`maxIdle`、`maxWait`和`timeToLive`都是Proxool的关键参数。`maxActive`定义了最大的活跃连接数,`maxIdle`是空闲连接的最大数量,`maxWait`是当所有连接...

    proxool 配置文件

    **Proxool配置文件详解** Proxool是一个开源的数据库连接池实现,它提供了一种高效、灵活的方式来管理和控制数据库连接。在Java应用程序中,使用连接池可以显著提高性能,尤其是在高并发环境下,通过复用已存在的...

    proxool源码以及相关api

    **Proxool源码分析与API详解** Proxool是一个开源的Java数据库连接池实现,它为应用程序提供了灵活且高效的数据库连接管理。在本篇中,我们将深入探讨Proxool的源码,理解其工作原理,并详细介绍相关的API,以及...

    proxool配置说明

    ### Proxool配置详解 #### 一、简介 Proxool是一个开源的Java数据库连接池管理器,由Joe Doherty开发并维护。它能够帮助应用程序有效地管理和复用数据库连接,减少频繁创建和销毁数据库连接所带来的性能开销,从而...

    proxool连接池

    **Proxool连接池详解** 在Java开发中,数据库连接管理是系统性能优化的重要环节。Proxool是一个轻量级的、开源的JDBC连接池,它为应用程序提供了高效的数据库连接管理。标题中的"proxool连接池"和描述中的"tomcat...

    proxool.jar

    **Proxool数据库连接池详解** Proxool是源自SourceForge的一个开源项目,它是一款针对Java平台设计的高效、易用的数据库连接池技术。在Java应用开发中,数据库连接池是一个至关重要的组件,用于管理和复用数据库...

    proxool-0.9.1

    **Proxool 0.9.1:数据库连接池详解** `Proxool` 是一个开源的、基于Java的数据库连接池,它提供了一种高效、灵活的方式来管理和控制数据库连接。在0.9.1版本中,这个工具为开发者提供了更稳定的性能和优化的资源...

    proxool数据库连接池配置

    ### Proxool数据库连接池配置详解 #### 一、引言 Proxool是一个轻量级的Java数据库连接池管理工具,它可以帮助开发者更高效地管理和利用数据库连接资源。通过Proxool,可以显著减少数据库连接创建和关闭的开销,...

    Hibernate Proxool连接池配置总结及常遇问题

    **Hibernate Proxool连接池配置详解** 在Java应用程序中,数据库连接池是管理数据库连接的一种高效方式,它可以显著提升系统性能,减少数据库资源的浪费。本文将深入探讨Hibernate与Proxool连接池的配置,以及在...

    连接池首先 proxool

    【标题】:“连接池技术详解:以Proxool为例” 在数据库管理中,连接池是一种重要的资源优化策略,它能够有效地管理和复用数据库连接,从而提高应用系统的性能和响应速度。Proxool是Apache软件基金会的一个开源项目...

    Spring+proxool+hibernate+struts2+aop整合的完整的简单项目

    **Spring+Proxool+Hibernate+Struts2+AOP整合详解** 在Java Web开发中,Spring、Proxool、Hibernate、Struts2和AOP(面向切面编程)是常用的框架和技术,它们各自承担着不同的职责,组合使用可以构建出高效、可维护...

    proxool部署说明.pdf

    ### Proxool数据库连接池部署知识点详解 #### 一、Proxool简介及核心功能 Proxool是一个轻量级的开源数据库连接池组件,专为Java应用程序设计,旨在优化数据库连接管理,提高应用程序的性能和响应速度。通过提供一...

    Proxool连接池配置

    ### Proxool连接池配置步骤详解 #### 步骤一:部署Proxool库与JDBC驱动 首先,确保项目环境中包含了Proxool库和对应的JDBC驱动。这通常涉及到将下载的Proxool库(lib下的所有jar文件)以及JDBC驱动放置到项目的`WEB...

Global site tag (gtag.js) - Google Analytics