持久化的数据连接池管理proxool

    proxool是一款比C3P0、DBCP更加优秀的池化连接软件。

    1.通过页面的形式查看现在数据库连接池的性能参数的动态情况。

    2.与Hibernate/Spring的整合很方便。

    现在就针对上面提到1和2的说明做代码的说明。

    一、通过页面形式查看系统的数据池化管理的动态情况。

        1、 先建立一个web应用的工程

        2、下载proxool的最新jar文件。http://proxool.sourceforge.net/download.html 当前最新的版本是proxool-0.9.1,将下载好的文件解压,并把commons-logging.jar、proxool-0.9.1.jar和proxool-cglib.jar放到WEB-INF/lib下。

       3、配置web.xml文件

            代码清单:

              <!--制定proxool.xm文件配置-->

<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>1</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>
 <!-- 配置受保护域,只有Tomcat管理员才能察看连接池的信息 -->
 <security-constraint>
  <web-resource-collection>
   <web-resource-name>proxool</web-resource-name>
   <url-pattern>/admin</url-pattern>
  </web-resource-collection>
  <auth-constraint>
   <role-name>manager</role-name>
  </auth-constraint>
 </security-constraint>
 <login-config>
  <auth-method>BASIC</auth-method>
  <realm-name>proxool manager Application</realm-name>
 </login-config>
 <security-role>
  <description>The role that is required to log in to the Manager Application</description>
  <role-name>manager</role-name>
 </security-role>
 <error-page>
  <error-code>401</error-code>
  <location>/401.jsp</location>
 </error-page>

 

5、在WEB-INF下创建文件proxool.xml文件。

代码清单如下

 

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

<something-else-entirely>

<proxool>

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

<driver-url>jdbc:mysql://127.0.0.1/fmdb</driver-url><!--url连接串-->

<driver-class>com.mysql.jdbc.Driver</driver-class> <!--驱动类-->

<driver-properties>

<property name="user" value="root" /> <!--用户名-->

<property name="password" value="kingsoft" /><!--密码-->

</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>

<!--没有空闲连接可以分配而在队列中等候的最大请求数,超过这个请求数的用户连接就不会被接受-->

<simultaneous-build-throttle>10</simultaneous-build-throttle>

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

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

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

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

</proxool>

</something-else-entirely>

 

       6、修改TOMCAT的tomcat-user.xml文件(添加用户角色)

       代码清单如下

<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
  <role rolename="manager"/>
  <user username="tomcat" password="123456" roles="manager"/>
</tomcat-users>

 

      二、proxool与Hibernate/Spring的整合

        在一的基础上修改几个配置文件:

      1、web.xml的修改:去掉所有的proxool的配置信息。

      2、删除掉proxool.xml文件,但是要将此文件中对proxool的配置信息摘抄出来,放在hibernate/spring的相应的配置文件的标签即可。(详细配置请看我后期的文章中的具体描述)

      3、tomcat的文件可以修改也还可不修改,问题不是主要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值