[code]
首先从 http://下载
proxool-0.9.0RC2.zip
解压后,把proxool-0.9.0RC2.jar放到工程的lib文件夹里面。
proxool是一个非常强大的连接池工具包,我觉得相比dbcp、c3p0这两个连接池包都要好用,我用loadrunner测试过,这三个连接池的从性能上排名如下:proxool>c3p0>dbcp,特别是dbcp在大并发的情况下总是出现各种异常。详细关于dbcp的介绍请参考dbcp用户指南,dbcp实现参考。
下面是实现proxool的几种方式:
JDBC连接方法:
首先建一个proxool的配置文件proxool.xml
proxool.xml 代码
xml 代码
-
xml version="1.0" encoding="UTF-8"?>
-
-
-
-
-
-
-
DBPoolalias>
-
-
jdbc:oracle:thin:@192.168.0.40:1521:drcomdriver-url>
-
-
oracle.jdbc.driver.OracleDriverdriver-class>
-
-
-
-
driver-properties>
-
-
90000house-keeping-sleep-time>
-
-
150maximum-new-connections>
-
-
3prototype-count>
-
-
100maximum-connection-count>
-
-
3minimum-connection-count>
-
proxool>
-
something-else-entirely>
再在web.xml中进行配置,其中的ServletConfigurator是装载WEB-INF目录下的proxool.xml,并设置为Tomcat启动时就加载。Admin这个Servlet是proxool提供的察看连接池的信息的工具,
web.xml 代码
xml 代码
-
xml version="1.0" encoding="UTF-8"?>
-
-
xmlns:xsi=""
-
xsi:schemaLocation="
-
/web-app_2_4.xsd">
-
-
ServletConfiguratorservlet-name>
-
-
org.logicalcobwebs.proxool.configuration.ServletConfigurator
-
servlet-class>
-
-
xmlFileparam-name>
-
WEB-INF/proxool.xmlparam-value>
-
init-param>
-
1load-on-startup>
-
servlet>
-
-
Adminservlet-name>
-
-
org.logicalcobwebs.proxool.admin.servlet.AdminServlet
-
servlet-class>
-
servlet>
-
-
Adminservlet-name>
-
/adminurl-pattern>
-
servlet-mapping>
-
-
TestServletservlet-name>
-
-
selfservice.TestServlet
-
servlet-class>
-
servlet>
-
-
TestServletservlet-name>
-
/TestServleturl-pattern>
-
servlet-mapping>
-
web-app>
以上配置完成后,第三步就可以创建一个连接池的类了
java 代码
就这样我们完成了一个连接池的功能。proxool的连接池我用loadrunner进行大并发的测试,性能还是很好的。
Hibernate中proxool连接池的方式:
首先步骤跟JDBC的连接池一样,也是新建一个proxool.xml配置文件,再在web.xml中配置,具体参考上面。
第二步在hibernate的配置文件hibernate.cfg.xml中配置proxool连接设置:
hibernate.cfg.xml代码
xml 代码
-
<property name="hibernate.connection.provider_class">org.hibernate.connection.ProxoolConnectionProviderproperty>
-
<property name="hibernate.proxool.pool_alias">DBPoolproperty>
-
<property name="hibernate.proxool.xml">proxoolconf.xmlproperty>
Spring中proxool连接池的方式:
首先布骤与JDBC的连接池一样,先建一个proxool.xml配置文件,再在web.xml中配置,具体参考上面的。
第二步在spring配置文件applicationContext.xml中配置proxool连接设置
applicationContext.xml代码
xml 代码
-
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" singleton="true">
-
<property name="driverClassName" value="org.logicalcobwebs.proxool.ProxoolDriver"/>
-
<property name="url" value="proxool.StatDBPool"/>
-
bean>
-
<bean id="transactionManager"
-
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
-
<property name="dataSource">
-
<ref local="dataSource" />
-
property>
-
bean>
这样spring就能得到一个dataSource的数据源。
proxool还有很多功能,我这只是简单的应用。具体请察看proxool用户指南。
[/code]
阅读(1021) | 评论(0) | 转发(0) |