- 浏览: 305770 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
u014212273:
好文一枚
log4j日志配置 -
向奕昌:
你好,能否提供下你那个测试dll
Java调用.dll文件 -
GARUDA183:
谢谢分享。
Flex中文帮助文档以及ActionScript3的中文文档 -
木叶之舟:
感谢楼主分享
Flex中文帮助文档以及ActionScript3的中文文档 -
游其是你:
呵呵,谢谢啦,好人一生平安~
Flex中文帮助文档以及ActionScript3的中文文档
解压后,把proxool-0.9.0RC2.jar放到工程的lib文件夹里面。
proxool是一个非常强大的连接池工具包,我觉得相比dbcp、c3p0这两个连接池包都要好用,我用loadrunner测试过,这三个连接池的从性能上排名如下:proxool>c3p0>dbcp,特别是dbcp在大并发的情况下总是出现各种异常。详细关于dbcp的介绍请参考dbcp用户指南,dbcp实现参考tvjody.iteye.com/admin/show/117225。
下面是实现proxool的几种方式:
JDBC连接方法:
首先建一个proxool的配置文件proxool.xml
- <!---->xml version="1.0" encoding="UTF-8"?>
- <!---->
- <something-else-entirely>
- <proxool>
- <!---->
- <alias>DBPoolalias>
- <!---->
- <driver-url>jdbc:oracle:thin:@192.168.0.40:1521:drcomdriver-url>
- <!---->
- <driver-class>oracle.jdbc.driver.OracleDriverdriver-class>
- <driver-properties>
- <property name="user" value="drcom"/>
- <property name="password" value="drcom"/>
- driver-properties>
- <!---->
- <house-keeping-sleep-time>90000house-keeping-sleep-time>
- <!---->
- <maximum-new-connections>150maximum-new-connections>
- <!---->
- <prototype-count>3prototype-count>
- <!---->
- <maximum-connection-count>100maximum-connection-count>
- <!---->
- <minimum-connection-count>3minimum-connection-count>
- proxool>
- something-else-entirely>
再在web.xml中进行配置,其中的ServletConfigurator是装载WEB-INF目录下的proxool.xml,并设置为Tomcat启动时就加载。Admin这个Servlet是proxool提供的察看连接池的信息的工具,
web.xml 代码
- <!---->xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <servlet>
- <servlet-name>ServletConfiguratorservlet-name>
- <servlet-class>
- org.logicalcobwebs.proxool.configuration.ServletConfigurator
- servlet-class>
- <init-param>
- <param-name>xmlFileparam-name>
- <param-value>WEB-INF/proxool.xmlparam-value>
- init-param>
- <load-on-startup>1load-on-startup>
- servlet>
- <servlet>
- <servlet-name>Adminservlet-name>
- <servlet-class>
- org.logicalcobwebs.proxool.admin.servlet.AdminServlet
- servlet-class>
- servlet>
- <servlet-mapping>
- <servlet-name>Adminservlet-name>
- <url-pattern>/adminurl-pattern>
- servlet-mapping>
- <servlet>
- <servlet-name>TestServletservlet-name>
- <servlet-class>
- selfservice.TestServlet
- servlet-class>
- servlet>
- <servlet-mapping>
- <servlet-name>TestServletservlet-name>
- <url-pattern>/TestServleturl-pattern>
- servlet-mapping>
- web-app>
以上配置完成后,第三步就可以创建一个连接池的类了
- package selfservice;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import org.logicalcobwebs.proxool.ProxoolException;
- import org.logicalcobwebs.proxool.ProxoolFacade;
- import org.logicalcobwebs.proxool.admin.SnapshotIF;
- public class PoolManager {
- private static int activeCount = 0;
- public PoolManager(){
- }
- /**
- * 获取连接
- * getConnection
- * @param name
- * @return
- */
- public Connection getConnection() {
- try{
- Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");//proxool驱动类
- Connection conn = DriverManager.getConnection("proxool.DBPool");
- //此处的DBPool是在proxool.xml中配置的连接池别名
- showSnapshotInfo();
- return conn;
- }catch(Exception ex){
- ex.printStackTrace();
- }
- return null;
- }
- /**
- * 此方法可以得到连接池的信息
- * showSnapshotInfo
- */
- private void showSnapshotInfo(){
- try{
- SnapshotIF snapshot = ProxoolFacade.getSnapshot("DBPool", true);
- int curActiveCount=snapshot.getActiveConnectionCount();//获得活动连接数
- int availableCount=snapshot.getAvailableConnectionCount();//获得可得到的连接数
- int maxCount=snapshot.getMaximumConnectionCount() ;//获得总连接数
- if(curActiveCount!=activeCount)//当活动连接数变化时输出的信息
- {
- System.out.println("活动连接数:"+curActiveCount+"(active) 可得到的连接数:"+availableCount+"(available) 总连接数:"+maxCount+"(max)");
- activeCount=curActiveCount;
- }
- }catch(ProxoolException e){
- e.printStackTrace();
- }
- }
- /**
- * 获取连接
- * getConnection
- * @param name
- * @return
- */
- public Connection getConnection(String name){
- return getConnection();
- }
- /**
- * 释放连接
- * freeConnection
- * @param conn
- */
- public void freeConnection(Connection conn){
- if(conn!=null){
- try {
- conn.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
- /**
- * 释放连接
- * freeConnection
- * @param name
- * @param con
- */
- public void freeConnection (String name,Connection con){
- freeConnection(con);
- }
- public void getQuery() {
- try {
- Connection conn = getConnection();
- if(conn != null){
- Statement statement = conn.createStatement();
- ResultSet rs = statement.executeQuery("select * from tblgxinterface");
- int c = rs.getMetaData().getColumnCount();
- while(rs.next()){
- System.out.println();
- for(int i=1;i<=c;i++){
- System.out.print(rs.getObject(i));
- }
- }
- rs.close();
- }
- freeConnection(conn);
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
就这样我们完成了一个连接池的功能。proxool的连接池我用loadrunner进行大并发的测试,性能还是很好的。
Hibernate中proxool连接池的方式:
首先步骤跟JDBC的连接池一样,也是新建一个proxool.xml配置文件,再在web.xml中配置,具体参考上面。
第二步在hibernate的配置文件hibernate.cfg.xml中配置proxool连接设置:
- <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连接设置
- <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]
评论
是不是要在web.xml先要配置加载proxool.xml文件啊
首先步骤跟JDBC的连接池一样,也是新建一个proxool.xml配置文件,再在web.xml中配置,具体参考上面。
第二步在hibernate的配置文件hibernate.cfg.xml中配置proxool连接设置:
纠正一下,在于hibernate连接的时候,web.xml中的配置是不需要加的.只需要proxool.xml和hibernate.cfg.xml就可以了.另外hibernate.cfg.xml中的
<property name="hibernate.proxool.xml">proxoolconf.xml</property>
应该改为:
<property name="hibernate.proxool.xml">proxool.xml</property>
发表评论
-
身份证号码分析
2009-04-21 19:01 2909身份证号码工具类 身份证号码规则 摘自百度: [根 ... -
java源程序加密
2009-03-22 11:12 2145Java程序的源代码很容易 ... -
NoClassDefFoundError:org/jboss/mx/util/PropertyAcc
2009-01-15 17:14 4129在项目工程中,无故出现如下异常: java.lang.No ... -
JVM内存不足异常
2008-07-01 13:24 2514JVM内存不足异常 Web Server中布署项目,出现内 ... -
开发中一些常用的加密算法
2008-06-25 17:02 1361开发过程中常用的到的一些加密算法。 一般常用的有: MD5 ... -
Apache Ant包进行ZIP文件压缩
2008-05-27 00:47 4992Apache Ant包进行ZIP文件压 ... -
Oracle的varchar2(4000)插入汉字过长
2008-04-26 13:04 5555在使用oracle时,如果在一个varchar2(4000)的 ... -
定时执行任务的方法
2008-04-08 12:13 1971定时执行任务的三种方法: 1)java.util.Timer. ... -
JSP\Servlet中的Filter(过滤器)应用
2008-01-12 11:31 8086做B/S的企业级应用,可能会遇到这样一种情况,客户的文档(wo ... -
用get方法传递中文参数时出现乱码的解决方法
2007-12-28 11:04 4381可先用java.net.URLEncoder.encode(& ... -
Java调用.dll文件
2007-09-20 14:40 66030因为项目的需求,要在JAVA项目中调用Windows的Dll( ... -
关于读取配置文件Parsing failed.的问题
2007-09-07 17:12 13511今天将测试通过的应用,发给售前工程师在客户那进行安装,马上出现 ... -
dbcp连接池实现
2007-08-27 17:22 13335DBCP是Apache的一个开源项目: commons.dbc ... -
log4j日志配置
2007-08-23 11:02 26061日志是应用软件中不可缺少的部分,Apache的开源项目Log4 ... -
Tomcat超过最大线程数出错,如何捕获异常
2007-08-22 12:56 5894Tomcat的server.xml中连接器设置如下 [code ... -
JDK5.0后的泛型程序设计
2007-08-17 11:36 6574之前了解学习了C#的语言特征,的确,C#是很好的面向对象的语言 ... -
Discuz! Passport 的AzDGCrypt算法
2007-08-14 15:06 4377前段时间客户(某电信公司)要求,我们公司的产品需要实现与他们的 ...
相关推荐
Proxool是一个开源的、轻量级的Java数据库连接池实现,它提供了一种高效、灵活的方式来管理数据库连接。在某些场景下,为了保护敏感信息,如数据库的用户名和密码,我们需要对这些数据进行加密处理。"proxool连接池...
Proxool是Apache软件基金会的一个开源项目,它提供了一个轻量级的数据库连接池实现。Proxool通过创建一个数据库连接池来管理数据库连接,避免了频繁创建和销毁连接带来的开销,提高了系统资源利用率。 2. **安装与...
项目实用的proxool连接池配置文件,每个标签都有注释,可以直接拿来使用
Proxool是Apache的一个开源项目,它提供了一个轻量级的数据库连接池实现。本篇将详细介绍如何在Hibernate中配置Proxool连接池。 首先,我们需要在Spring的配置文件`applicationContext.xml`中设置SessionFactory ...
Proxool连接池使用方法 首先, 你要把下载 proxool 的 lib 下面所有的 jar 文件, 放到 WEB-INF/lib 下面, 另外, 把你的 jdbc driver 也放到相同的 lib,
-- 连接池的别名 --> <alias>DBPool</alias> - <!-- proxool只能管理由自己产生的连接 --> <driver-url>jdbc:sqlserver://localhost:1433;dataBaseName=books</driver-url> - <!-- JDBC驱动程序 --> ...
Proxool是Apache软件基金会的一个开源项目,它提供了一个轻量级的数据库连接池实现。在本压缩包中,包含的是与Proxool连接池相关的MySQL驱动jar包,这将有助于在Java应用程序中建立与MySQL数据库的连接。 首先,...
Proxool是一个开源的轻量级Java数据库连接池实现,其主要目标是替代常见的数据库连接池解决方案,如C3P0或DBCP,并且提供了更加灵活和易于配置的特性。在实际应用中,合理配置Proxool可以显著提高系统的性能和稳定性...
在这个"ssh2简单案例"中,我们将探讨如何结合注解、Proxool连接池和SF4J日志记录来构建一个SSH2注册登录系统。 首先,SSH2在Java中的实现通常通过JSch库来完成。JSch允许开发者在Java程序中执行命令、传输文件以及...
标题 "Spring+Hibernate+Proxool连接池" 涉及到的是在Java Web开发中,如何使用Spring框架集成Hibernate ORM框架,并结合Proxool作为数据库连接池的技术实践。这通常是为了提高应用性能,有效管理和复用数据库连接,...
`proxool连接池jar包`是一个包含Proxool数据库连接池技术的软件包。Proxool作为源码开放的项目,源自著名的开源平台SourceForge,它为Java开发者提供了一个高效且易于管理的数据库连接池解决方案。数据库连接池在多...
Proxool连接池是数据库连接管理的一个开源工具,它提供了一种高效且灵活的方式来管理和复用数据库连接,以提升应用程序的性能和响应速度。在Java应用程序中,尤其是在高并发环境下,数据库连接池扮演着至关重要的...
**Proxool连接池详解** 在Java开发中,数据库连接管理是系统性能优化的重要环节。Proxool是一个轻量级的、开源的JDBC连接池,它为应用程序提供了高效的数据库连接管理。标题中的"proxool连接池"和描述中的"tomcat...
Proxool是一个开源的数据库连接池实现,它提供了动态、可扩展的连接池管理服务。通过Proxool,开发者可以方便地监控和调整连接池参数,以适应不同规模的应用需求。 **2. 配置步骤** **(1)引入依赖** 首先,需要...
Proxool是一个开源的、轻量级的Java数据库连接池实现,它允许应用程序高效地管理和重用数据库连接,以提高系统的响应速度和并发处理能力。在这个"Proxool连接池实例.zip"压缩包中,我们可以推测包含了一些关于如何在...
下面我们将深入探讨基于SSH的Proxool连接池配置。 首先,配置环境:MyEclipse5.5,Windows 2003操作系统,Oracle和MySQL数据库。在这样的环境中,Proxool连接池可以帮助我们更高效地管理数据库连接,提高应用程序的...
Proxool作为一款轻量级的开源数据库连接池实现,它提供了高效的数据库连接管理和复用机制,旨在减少应用程序创建和销毁数据库连接的开销,从而提升性能。 ### Proxool连接池配置步骤详解 #### 步骤一:部署Proxool...
Spring2.5配置proxool连接池
**Proxool连接池**:Proxool是数据库连接池的一种实现,它的主要作用是管理数据库连接,减少创建和销毁连接的开销。当多个用户请求数据库连接时,Proxool会复用已存在的连接,而不是每次请求都新建一个。这大大提高...