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. Javascript中自动切换焦点

      <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title&g ...

  2. 某些输入文件使用或覆盖了已过时的 API

    android出现注: 某些输入文件使用或覆盖了已过时的 API. 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译. 注: 某些输入文件使用了未经检查或不安全的操作. 注 ...

  3. 数据库查询优化器的艺术:原理解析与SQL性能优化

    数据库查询优化器的艺术 作者:李海翔 Oracle公司MySQL全球开发团队.资深专家 简单的浏览了一遍,由于以前没有接触过SQL优化这些知识,读起来还是非常吃力的,不过收获还是很大的. 作者通过对M ...

  4. STM32/GD32上内存堆栈溢出探测研究

    无数次遭受堆栈溢出折磨,随着系统变得复杂,故障点越来越难以查找!主要溢出情况如下:1,一般RAM最后两块空间是堆Heap和栈Stack,堆从下往上用,栈从上往下用,任意一个用完,都会进入对方的空间2, ...

  5. Tomcat优化总结

    一.内存溢出问题 Linux设置启动脚本 [root@LAMP ~]# vi /usr/local/tomcat/bin/catalina.sh #__________________________ ...

  6. 2016 Al-Baath University Training Camp Contest-1 J

    Description X is fighting beasts in the forest, in order to have a better chance to survive he's gon ...

  7. 2016 Al-Baath University Training Camp Contest-1 A

    Description Tourist likes competitive programming and he has his own Codeforces account. He particip ...

  8. 循环嵌套,while循环,穷举迭代循环

    一.循环嵌套 简单的就是说,在一个for循环里嵌入多个小for循环. 其中,在打矩形.三角形和乘法口诀表之类的题目中,大for循环一般表示的是行数,其余的小for循环式每一行中的内容. 二.while ...

  9. 炮(cannon)

    炮(cannon)[题目描述] 众所周知,双炮叠叠将是中国象棋中很厉害的一招必杀技.炮吃子时必须隔一个棋子跳吃,即俗称“炮打隔子”. 炮跟炮显然不能在一起打起来,于是rly一天借来了许多许多的炮在棋盘 ...

  10. Duilib中系统消息在自己窗口类的使用

    这些Win32消息响应函数,子类只需要重写,不需要在HandleMessage里面再调用一次 开发中遇到的问题,在任务栏关闭程序,会响应WM_SYSCOMMAND消息,因为要给用户提示是否关闭,所以需 ...