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文件。
代码清单如下
<ml version=”1.0″ encoding=”UTF-8″gt;
<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文件(添加用户角色)
代码清单如下
<ml version=’1.0′ encoding=’utf-8’gt;
<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的文件可以修改也还可不修改,问题不是主要的。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!