c3p0官网:https://github.com/swaldman/c3p0
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"> <property name="driverClass" value="com.mysql.jdbc.Driver"/> <property name="jdbcUrl" value="jdbc:mysql://IP:PORT/DB?useUnicode=true&characterEncoding=utf8"/> <property name="user" value="root"/> <property name="password" value="root"/> <!--连接池中初始化时建立的连接数--> <property name="initialPoolSize" value="20"/> <!--连接池中无可用连接时,一次性获取连接数--> <property name="acquireIncrement" value="5"/> <!--连接池中最大连接数--> <property name="maxPoolSize" value="100"/> <!--最大空闲时间,单位:秒,超过30秒未使用则连接设为过期,在空闲检查执行之后会被移出连接池。若为0则永不过期。Default: 0 --> <property name="maxIdleTime" value="30"/> <!--空闲连接检查时间周期,单位:秒,0为不执行检查。Default: 0 --> <property name="idleConnectionTestPeriod" value="300"/> <!-- 连接池中最少连接数,当连接数==最少连接数,即便有空闲连接,也不移出连接--> <property name="minPoolSize" value="10"/> <!-- 从连接池中获取连接的超时时间 ,单位:毫秒,超时后会报错,0为一直等待,默认为0 --> <property name="checkoutTimeout" value="1000"/> <!-- 连接池中,Statement被缓存的最大值,以便下次使用时直接取出--> <property name="maxStatements" value="2000"/> <!-- 连接池中,每一个连接缓存Statement的最大值,以便下次使用时直接取出--> <property name="maxStatementsPerConnection" value="20"/> <!--获取连接失败时,重试次数,默认值:30--> <property name="acquireRetryAttempts" value="99999"/> <!--获取连接失败,重试获取连接的时间间隔,单位:毫秒,默认值:1000--> <property name="acquireRetryDelay" value="10000"/> <!--连接关闭时,未提交的,自动提交,默认值为:false,即为回滚事务--> <property name="autoCommitOnClose" value="true"/> <!--数据库表名,通过查询(select * from 表名)测试数据库连接是否正常,已存在该表,则不能有数据,不存在该表,C3PO会建表--> <property name="automaticTestTable" value="C3P0_CONNECT_TEST"/> <!--定义一个查询SQL,用于数据库连接是否正常,如果定义了automaticTestTable属性,本属性被忽略--> <property name="preferredTestQuery" value=" select 1 from dual"/> <!--当连接被添加到连接池后,测试连接的可用性,默认值:false--> <property name="testConnectionOnCheckin" value="true"/> <!--如果设置为true,每次从池中取一个连接,将做一下测试,使用automaticTestTable 或者 preferredTestQuery,做一条查询语句.看看连接好不好用,不好用,就关闭它,重新从池中拿一个.--> <property name="testConnectionOnCheckout" value="false"/> <!--true:当获取连接出现异常时,标识连接池不可用,并不再重试连接数据库--> <!--false: 当获取连接出现异常时,下次被调用时继续获取连接--> <property name="breakAfterAcquireFailure" value="false"/> <!--连接的最长存活时间,单位:秒--> <property name="maxConnectionAge" value="3600"/> <!--连接未返回给连接池的超时时间,一般用于应用未关闭连接,长期占用时处理--> <property name="unreturnedConnectionTimeout" value="60"/> </bean>
相关推荐
C3P0不仅支持标准的JDBC数据源接口,还提供了一系列额外的连接管理和配置选项,使得开发者能够根据具体的应用场景灵活调整连接池的行为。 ### 二、C3P0配置详解 #### 1. 配置文件:c3p0.properties C3P0的配置...
**配置c3p0数据源详解** 在Java的Web应用中,数据库连接管理是一个至关重要的环节,有效地管理和控制数据库连接可以提高系统的性能和稳定性。c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范...
配置 C3P0 数据源通常涉及以下几个步骤: 1. **引入依赖**:首先,你需要将 C3P0 的相关 JAR 包添加到项目的类路径中。例如,`c3p0-0.9.1.2.jar` 是核心库,`c3p0-0.9.1.2-jdk1.3.jar` 是针对 JDK 1.3 的版本,而 `...
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。在SSM(Spring、Struts、MyBatis)框架中,C3P0数据源常被用于管理数据库连接,提高应用的性能和稳定性。下面将详细介绍C3...
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。C3P0提供了一些高级特性,如自动检测死锁、自动回收空闲时间过长的连接、多线程公平访问等,这些都极大地优化了数据库连接...
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。在Java的Web应用中,数据库连接的创建、分配、管理和释放是相当耗时的,而C3P0通过管理这些连接,提高了应用程序的性能和...
MySQL.C3p0配置动态数据源是Java开发中常见的数据库连接池管理技术,它结合了MySQL数据库驱动和C3p0连接池库,为应用程序提供高效、稳定的数据库连接管理。在进行这样的配置时,需要引入特定的依赖包,确保项目的...
C3P0是一个开源的Java连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。这个压缩包文件包含了使用C3P0数据库连接池所需的关键组件和配置文件,使得数据库连接管理更加高效和稳定。 首先,`c3p0-...
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0的主要功能是管理数据库连接,通过复用已存在的连接,减少创建和销毁连接的开销,提高应用程序的运行效率。此外,它还...
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。C3P0的主要特点是轻量级、高效且稳定,广泛应用于各种Java Web应用中。在本文中,我们将深入探讨C3P0连接池的配置,以便更...
- C3P0:开源的JDBC连接池,提供了比JDBC更强大的功能,如自动检测死锁、自动重连等。 - DBCP:Apache的一个开源项目,基于Jakarta-pool实现,是Tomcat默认的数据源。 - HikariCP:被誉为“最快的Java JDBC连接池”...
c3p0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。使用c3p0连接池可以有效地管理和优化数据库连接,提高系统的性能和稳定性。下面将详细介绍c3p0的配置和使用方法。 ### 1....
3. **初始化C3P0数据源**:在代码中读取配置并初始化C3P0数据源: ```java Properties props = new Properties(); props.load(new FileInputStream("c3p0.properties")); ComboPooledDataSource cpds = new ...
在Java开发中,数据库连接管理是一项关键任务,而C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。C3P0库可以帮助我们高效、稳定地管理数据库连接,避免因数据库连接泄露或...
jdbc使用c3p0连接池连接数据库,支持配置多个数据源,有相关的查询测试。
在Spring框架中,数据库连接管理是一项关键任务,而C3P0是一个开源的JDBC连接池,它提供了数据源管理,能有效提升数据库操作的性能和效率。本篇将详细介绍如何在Spring中配置C3P0连接池。 首先,我们需要理解C3P0的...
在 Spring 中,C3P0 配置文件可以通过数据源实现。Spring 中,数据连接是通过数据源获得的。在 Spring 中,你可以通过 JNDI 获取应用服务器的数据源,也可以直接在 Spring 容器中配置数据源。此外,你还可以通过代码...
在实际开发中,还可以结合Spring框架,利用其对C3P0的支持,实现更便捷的数据源管理。 总结起来,JDBC+C3P0的组合提供了一种高效、可扩展的数据库连接池解决方案,尤其适用于大型的、高并发的Web应用程序。合理配置...
C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate、Spring等。 适合人群:正在学习使用数据库连接池 里面的配置文件直接可用,少走弯路,...