proxool在web环境中的使用

简介

Proxool连接池是sourceforge下的一个开源项目,这个项目提供一个健壮、易用的连接池,最为关键的是这个连接池提供监控的功能,方便易用,便于发现连接泄漏的情况。开源项目地址是:http://proxool.sourceforge.net/

Proxool提供了很多配置属性,其属性意义如下,当然还是建议直接查看官方文档http://proxool.sourceforge.net/properties.html

目录:

  1. 配置Proxool.xml

  2. 配置web.xml

  3. 获取连接

    1.配置Proxool.xml

<?xml version="1.0" encoding="utf-8"?>
<something-else-entirely>
  <proxool>

    <alias>dbname</alias> <!-- 数据源的别名 -->

    <!-- 数据库连接信息 -->
<driver-url>jdbc:mysql://localhost:3306/zz</driver-url> <driver-class>com.mysql.jdbc.Driver </driver-class> <driver-properties>
<property name="user" value="root"/>
<property name="password" value="123123"/>
<property name="useUnicode" value="true"/> <!-- 使用unicode字符编码集 -->
<property name="characterEncoding" value="utf-8"/> <!-- 字符编码为utf-8 -->
</driver-properties>
    <!-- 最大连接数 -->
<maximum-connection-count>100</maximum-connection-count> <!-- 最小连接数 -->
<minimum-connection-count>10</minimum-connection-count>
    <!-- 最小增量 -->
<simultaneous-build-throttle>10</simultaneous-build-throttle> <!-- 定期巡检时间(毫秒) -->
<house-keeping-sleep-time>90000</house-keeping-sleep-time> <prototype-count>5</prototype-count>
    <!-- 使用前检测 -->
<test-before-use>true</test-before-use> <!--这是MySQL的写法,各个数据库有差异-->
    <house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql> 
<!--这是Oracle的写法,各个数据库有差异-->
     <house-keeping-test-sql>select sysdate from dual</house-keeping-test-sql>  
  </proxool>

</something-else-entirely>

2.配置web.xml

 <servlet>
<servlet-name>ServletConfigurator</servlet-name>
<servlet-class>
org.logicalcobwebs.proxool.configuration.ServletConfigurator
</servlet-class>
<init-param>
<param-name>xmlFile</param-name>
<!--proxool.xml配置文件所在的位置-->
<param-value>WEB-INF/proxool.xml</param-value>
      </init-param>
<load-on-startup>1</load-on-startup>
</servlet>                3.获取连接
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; /**
* @author ctd
*
*/
public class DBUtils { private static DBUtils me=new DBUtils(); private DBUtils() {} public static DBUtils getInstance()
{
return me;
} /**
* 获取数据库连接
* @return
*/
public Connection getConn()
{ Connection conn=null; try {
//查看类路径中是否存在这个驱动入口类
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
conn=DriverManager.getConnection("proxool.dbname");//proxool.数据库别名 } catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} return conn; } /**
* 释放数据库资源
* @param conn
* @param pstmt
* @param rset
*/
public void ReleaseRes(Connection conn,PreparedStatement pstmt,ResultSet rset)
{
try{
if(rset!=null) rset.close();
if(pstmt!=null) pstmt.close();
if(conn!=null) conn.close();
}catch(SQLException e)
{
e.printStackTrace();
}
}
}

 

proxool在web环境中的使用的更多相关文章

  1. web环境中的spring MVC

    1. web.xml文件的简单详解 在web环境中, spring MVC是建立在IOC容器的基础上,要了解spring mvc,首先要了解Spring IOC容器是如何在web环境中被载入并起作用的 ...

  2. Web环境中Spring的启动过程

    1.spring不但可以在JavaSE环境中应用,在Web环境中也可以广泛应用,Spring在web环境中应用时,需要在应用的web.xml文件中添加如下的配置: …… <context-par ...

  3. spring事务在web环境中失效的问题

    今天温习一下spring事务的时候,出现了一种诡异的现象,在java环境中测试事务是可以的.然后到web下测试事务就没用了.spring.xml配置 spring-mvc.xml配置 后来百度发现是因 ...

  4. web环境中微信JS-SDK配置

    一.公众号相关设置 首先,在公众号中进行JS安全域名的设置,在公众号设置-功能设置中选择JS接口安全域名,点击设置进入设置对话框.按照要求逐步进行,完成设置. 二.页面请求发送与处理 引入所需js: ...

  5. Spring Scope:Web项目中如何安全使用有状态的Bean对象?

    Web系统是最常见的Java应用系统之一,现在流行的Web项目多使用ssm或ssh框架,使用spring进行bean的管理,这为我们编写web项目带来了很多方便,通常,我们的controler层使用注 ...

  6. 细说shiro之四:在web应用中使用shiro

    官网:https://shiro.apache.org/ 1. 下载在Maven项目中的依赖配置如下: <!-- shiro配置 --> <dependency> <gr ...

  7. ASP.NET Web API WebHost宿主环境中管道、路由

    ASP.NET Web API WebHost宿主环境中管道.路由 前言 上篇中说到ASP.NET Web API框架在SelfHost环境中管道.路由的一个形态,本篇就来说明一下在WebHost环境 ...

  8. ASP.NET Web API Selfhost宿主环境中管道、路由

    ASP.NET Web API Selfhost宿主环境中管道.路由 前言 前面的几个篇幅对Web API中的路由和管道进行了简单的介绍并没有详细的去说明一些什么,然而ASP.NET Web API这 ...

  9. CentOS6.5中部署java web环境

    原来在linux中部署java web环境,没有做好总结,这次在部署的过程中,将部署的过程做了记录,希望对大家有帮助.主要内容包括CentOS安装以后的网络设置,系统自带jdk的卸载,新版本jdk的安 ...

随机推荐

  1. jquery 实现页面局部刷新ajax做法

    这个方法就多了去了,常见的有以下几种:下面介绍全页面刷新方法:有时候可能会用到 window.location.reload()刷新当前页面. parent.location.reload()刷新父亲 ...

  2. MultiSelectComboBox(二)

    1. MainWindow.xaml <Window x:Class="MultiSelectDemo.MainWindow"         xmlns="htt ...

  3. 2015-09-17 001 日志与对话框公用类_public

    using System;using System.Data;using System.Configuration;using System.Linq;using System.Web;using S ...

  4. hdu4940 Destroy Transportation system(2014多校联合第七场)

    题意很容易转化到这样的问题:在一个强连通的有向图D中是否存在这样的集合划分S + T = D,从S到T集合的边权大于从T到S集合的边权. 即D(i, j)  > B(j, i) + D(j, i ...

  5. acdream Divide Sum

    Divide Sum Time Limit: 2000/1000MS (Java/Others)Memory Limit: 128000/64000KB (Java/Others) SubmitSta ...

  6. Less/Sass编译工具

    less中午网站有详细的说明:http://www.1024i.com/demo/less/ 那里我使用的koala   全平台支持,国产.下载地址:http://koala-app.com/inde ...

  7. MVC 中DropDownList 用法

    MVC 中DropDownList  用法 后台 Dictionary<string, int> dc = new Dictionary<string, int>(); dc. ...

  8. flume ng之TailSource

    在它里面自带了一个TailSource以及TailDirSource,这个Source是负责读取一个文件,并一行一行的发送到sink端,而在flume-ng 1.4.0里面没有自带TailSource ...

  9. 【MySQL】MySQL的group_concat使用例子

    > 参考的优秀文章 GROUP_CONCAT(expr) > 简单的例子 此函数的功能,是拼接group分组多行的数据为一行,并可以指定去重.排序.分隔符. 例子: select t.na ...

  10. 【转载】COM 连接点

    原文:COM 连接点 CLR 完全介绍 COM 连接点 Thottam R. Sriram 来自:http://msdn.microsoft.com/zh-cn/magazine/cc163361.a ...