`

(转) c3p0、dbcp、tomcat jdbc pool 连接池配置简介及常用数据库的driverClass和驱动包

 
阅读更多

原文:http://blog.csdn.net/huiwenjie168/article/details/8477967

 

DBCP连接池配置

         <bean id="dbcpDataSource" abstract="true">
             <property name="maxActive" value="100" /><!-- 连接池的最大数据库连接数。设为0表示无限制。 -->
             <property name="initialSize" value="1" /><!-- 初始化连接数量 --> 
             <property name="maxWait" value="60000" /><!-- 最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。 -->
             <property name="maxIdle" value="100" /><!-- 最大等待连接中的数量,设 0 为没有限制 -->
             <property name="minIdle" value="3" /><!-- 最小等待连接中的数量,设 0 为没有限制 -->
             <property name="removeAbandoned" value="true" /><!--强制自我中断避免dbcp自身bug出现连接过久资源耗尽-->
             <property name="removeAbandonedTimeout" value="180" /><!--自我中断时间秒 -->

         </bean>

         <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" parent="dbcpDataSource">
             <property name="driverClassName" value="com.mysql.jdbc.Driver" />
             <property name="url" value="jdbc:mysql://127.0.0.1:3306/text?allowMultiQueries=yes" />
             <property name="username" value="root" />

             <property name="password" value="root" />

        </bean>

关于dbcp连接池具体的使用方法还需参考:点击打开链接

dbcp jar包

commons-dbpc.jar、commons-collections.jar、commons-pool.jar 下载点击下载

c3p0连接池配置

      <bean id="c3p0DataSource"  abstract="true">               
             <property name="initialPoolSize" value="1"/>  <!--初始化时获取的连接数,取值应在minPoolSize与maxPoolSize之间。Default: 3 -->              
            <property name="minPoolSize" value="1"/> <!--连接池中保留的最小连接数。-->                       
            <property name="maxPoolSize" value="300"/>  <!--连接池中保留的最大连接数。Default: 15 -->              
           <property name="maxIdleTime" value="60"/><!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。Default: 0 -->                       
           <property name="acquireIncrement" value="5"/><!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->                    
            <property name="idleConnectionTestPeriod" value="60"/>   <!--每60秒检查所有连接池中的空闲连接。Default: 0 -->     
      </bean>

       <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close" parent="c3p0DataSource">
             <property name="driverClassName" value="com.mysql.jdbc.Driver" />
             <property name="url" value="jdbc:mysql://127.0.0.1:3306/text?allowMultiQueries=yes" />
             <property name="username" value="root" />

             <property name="password" value="root" />

        </bean>

关于c3p0连接池具体的使用方法还需参考:点击打开链接

c3p0 jar包

c3p0-0.9.2.jar 下载点击下载

jdbc-pool连接池配置

        <bean id="poolDataSource"  abstract="true">

             <property name="maxActive" value="100"/>  <!-- 连接池的最大数据库连接数。设为0表示无限制。 -->
             <property name="initialSize" value="10"/>  <!-- 初始化连接数量 -->
             <property name="maxWait" value="10000"/>  <!-- 最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。 -->
             <property name="removeAbandonedTimeout" value="60"/>  <!--自我中断时间秒 -->
             <property name="minEvictableIdleTimeMillis" value="30000"/>  <!--连接的超时时间,默认为半小时。-->
             <property name="minIdle" value="10"/>  <!-- 最小等待连接中的数量,设 0 为没有限制 -->
             <property name="timeBetweenEvictionRunsMillis" value="30000"/>  <!-- #运行判断连接超时任务的时间间隔,单位为毫秒,默认为-1,即不执行任务。 -->
             <property name="jmxEnabled" value="true"/>  <!-- 注册池JMX。的默认值是true。-->
             <property name="testWhileIdle" value="false"/>  <!--默认值是false,当连接池中的空闲连接是否有效 -->
             <property name="testOnBorrow" value="true"/> <!-- 默认值是true,当从连接池取连接时,验证这个连接是否有效-->
             <property name="validationInterval" value="30000"/>  <!--检查连接死活的时间间隔(单位:毫妙) 0以下的话不检查。默认是0。 -->
             <property name="testOnReturn" value="false"/>  <!--默认值是flase,当从把该连接放回到连接池的时,验证这个连接是 -->
             <property name="validationQuery" value="select 1"/>  <!--一条sql语句,用来验证数据库连接是否正常。这条语句必须是一个查询模式,并至少返回一条数据。可以为任何可以验证数据库连接是否正常的sql-->
             <property name="logAbandoned" value="true"/>  <!--是否记录中断事件, 默认为 false-->
             <property name="removeAbandoned" value="true"/>  <!-- 是否自动回收超时连接-->

            <!--这些拦截器将被插入到链中的一个java.sql.Connection对象的操作都是以拦截器。默认值是空的。
                  预定义的拦截器:
                  org.apache.tomcat.jdbc.pool.interceptor.ConnectionState - 跟踪自动提交,只读目录和事务隔离级别。
                  org.apache.tomcat.jdbc.pool.interceptor.tatementFinalizer - 跟踪打开的语句,并关闭连接时返回到池中。
-->
            <property name="jdbcInterceptors" value="org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer"/>  
       </bean> 

注:往连接池里面加入下面4个属性的值,validationQuery为必须的,testOnBorrow,testOnReturn,testWhileIdle是根据validationQuery来验证连接是否有效
       <bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource" destroy-method="close" parent="poolDataSource">
             <property name="driverClassName" value="com.mysql.jdbc.Driver" />
             <property name="url" value="jdbc:mysql://127.0.0.1:3306/text?allowMultiQueries=yes" />
             <property name="username" value="root" />

             <property name="password" value="root" />

        </bean>

关于tomcat jdbc pool 连接池具体的使用方法还需参考:点击打开链接

jdbc-pool jar包

commons-dbpc.jar、commons-collections.jar、commons-pool.jar 下载点击下载

常用数据库的driverClass和jdbcUrl

 

数据库 driverClass jdbcUrl
SQL Server com.microsoft.sqlserver.jdbc.SQLServerDriver jdbc:sqlserver://127.0.0.1:1433;DatabaseName=schoolmis_new
my SQL com.mysql.jdbc.Driver jdbc:mysql://127.0.0.1:3306/azmis?allowMultiQueries=yes
Oracle oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:数据库name/数据库password@localhost:1521:全局数据库名称

 

SQL SERVER2000/2005/2008、MY SQL、ORCAL驱动包

下载点击下载

分享到:
评论

相关推荐

    基于DBCP/c3p0/Tomcat的数据库连接池的demo

    本示例将详细介绍如何使用DBCP(Database Connection Pool)、c3p0以及Tomcat内置的数据源来实现数据库连接池的配置与使用。 **DBCP(Database Connection Pool)** DBCP是Apache软件基金会的Jakarta项目下的一个子...

    常用数据库连接池 (DBCP、c3p0、Druid) 配置说明1

    本文主要探讨了三个常用的数据库连接池:DBCP、c3p0和Druid,以及它们的配置说明。 1. **DBCP(Apache Commons DBCP)** DBCP是Apache Commons项目的一部分,它依赖于Apache Commons Pool对象池机制来管理数据库...

    DBCP,C3P0,Tomcat_JDBC 性能及稳定性测试代码

    本项目提供了对三种常用的Java数据库连接池——DBCP(BasicDataSource)、C3P0和Tomcat JDBC的性能及稳定性测试代码。下面将详细介绍这三个连接池的工作原理、特性以及如何进行性能测试。 1. **DBCP ...

    c3p0 还有其他连接池

    "c3p0 还有其他连接池"这个标题表明我们将讨论c3p0以及其他类型的数据库连接池。 c3p0是一款开源的Java数据库连接池实现,由Miquel Arquero创建,它是Comprehensive Database Connection Pooling的缩写。c3p0提供了...

    c3p0数据库连接池

    - 相比于Tomcat JDBC Connection Pool,c3p0更适合小型项目,大型项目可能会倾向于选择更高效、更活跃维护的连接池。 7. **常见问题与解决方案** - 如果出现“Too many connections”错误,可能是因为`maxPool...

    TOMCAT中数据库连接池的几种配置方法_TOMCAT中数据库连接池的几种配置方法_

    以上是TOMCAT中常见的三种数据库连接池配置方法,包括Apache Commons DBCP、C3P0以及Tomcat内置的JDBC Pool。每种方式都有其特点和适用场景,开发者应根据实际需求选择合适的连接池组件,并进行相应的配置。正确配置...

    dbcp数据库连接池

    DBCP虽然历史悠久,但在性能和稳定性上可能不如其他现代连接池,如HikariCP、C3P0或Tomcat JDBC Connection Pool。这些连接池提供了更好的性能优化和错误处理机制。 总结,DBCP作为一款经典的数据库连接池,虽然在...

    数据库连接池驱动程序包

    在这个“数据库连接池驱动程序包”中,包含了三种主流的连接池实现:C3P0、DBCP和Druid。这三种驱动程序各自有其特点和优势,下面将详细阐述它们的原理、使用方法以及适用场景。 1. C3P0 C3P0是一个开源的JDBC连接...

    tomcat连接池配置

    Tomcat内置了两个常用的数据库连接池实现:C3P0和Apache DBCP。C3P0是一款功能强大的连接池,支持多数据源,具有自动测试连接、自动回收等功能。Apache DBCP是Apache的一个项目,它基于Jakarta-pool,提供了一个基本...

    DBCP连接池DBCP和C3P0配置

    Apache DBCP(Database Connection Pool)和C3P0都是流行的开源数据库连接池实现。 - **DBCP**:Apache DBCP是Apache Commons Pool项目中的一个子项目,它提供了对数据库连接池的实现。 - **C3P0**:C3P0(Concise ...

    JDBC常用连接池 c3p0 BDCP Druid

    C3P0是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和jdbc2扩展规范说明的Connection 和Statement 池的DataSources 对象 DBCP (Database Connection Pool)是一个依赖Jakarta ...

    JDBC数据源连接池的配置和使用示例

    - C3P0:开源的JDBC连接池,提供了比JDBC更强大的功能,如自动检测死锁、自动重连等。 - DBCP:Apache的一个开源项目,基于Jakarta-pool实现,是Tomcat默认的数据源。 - HikariCP:被誉为“最快的Java JDBC连接池”...

    JAVA数据库连接池(C3P0,Druid,JNDI ,DBCP,Proxool,BoneCP)

    例如,Tomcat、JBoss等应用服务器都支持JNDI配置C3P0、DBCP等连接池。 4. DBCP(Database Connection Pool): DBCP是Apache Commons的一个项目,基于Jakarta-pool实现的数据库连接池。它简单易用,但相比于C3P0和...

    dbcp连接池和配置文件

    DBCP(Database Connection Pool)是Apache Commons DBCP项目提供的一种数据库连接池组件,它允许Java应用程序...但在大型高并发应用中,可能需要更高效且功能更丰富的连接池,如C3P0、HikariCP或者Tomcat JDBC连接池。

    tomcat 5.5.28配置数据库连接池

    在Tomcat 5.5.28中,常见的数据库连接池实现有Apache Commons DBCP(描述中的"tomDbcp"可能就是指这个)和C3P0等。以下将详细介绍如何配置这些连接池。 1. **Apache Commons DBCP配置**: - **下载与导入**:首先...

    jdbc数据库连接池

    1. C3P0:一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。 2. DBCP(Apache Commons DBCP):Apache提供的数据库连接池,基于Jakarta-pool实现。 3. HikariCP:性能极高的连接池...

    DBCP配置数据库连接池需要的jar包

    虽然DBCP是一个简单易用的连接池实现,但在现代Java应用中,更流行的数据库连接池实现有HikariCP、C3P0和Tomcat JDBC Pool等,它们提供了更好的性能和更丰富的特性。 总之,DBCP是一个基础的数据库连接池实现,...

    tomcat数据库连接池的使用

    Tomcat默认使用的是Apache的DBCP(DB Connection Pool)或更现代的C3P0连接池。这两种连接池组件都可以通过修改Tomcat的配置文件来启用和配置。配置主要涉及以下几个步骤: 1. **添加依赖**:首先,确保你的项目...

    自定义JDBC连接池及常用连接池介绍

    2. DBCP (Apache BasicDataSource):Apache Commons DBCP是Apache组织提供的一个基于Jakarta POI项目中的DBCP库,它是JDBC连接池的一种实现,提供了基本的数据源类和驱动管理。 3. HikariCP:这是目前被认为是性能...

Global site tag (gtag.js) - Google Analytics