initialSize :连接池启动时创建的初始化连接数量(默认值为0)
maxActive :连接池中可同时连接的最大的连接数(默认值为8,调整为20,高峰单机器在20并发左右,自己根据应用场景定)
maxIdle:连接池中最大的空闲的连接数,超过的空闲连接将被释放,如果设置为负数表示不限制(默认为8个,maxIdle不能设置太小,因为假如在高负载的情况下,连接的打开时间比关闭的时间快,会引起连接池中idle的个数 上升超过maxIdle,而造成频繁的连接销毁和创建,类似于jvm参数中的Xmx设置)
minIdle:连接池中最小的空闲的连接数,低于这个数量会被创建新的连接(默认为0,调整为5,该参数越接近maxIdle,性能越好,因为连接的创建和销毁,都是需要消耗资源的;但是不能太大,因为在机器很空闲的时候,也会创建低于minidle个数的连接,类似于jvm参数中的Xmn设置)
maxWait :最大等待时间,当没有可用连接时,连接池等待连接释放的最大时间,超过该时间限制会抛出异常,如果设置-1表示无限等待(默认为无限,调整为60000ms,避免因线程池不够用,而导致请求被无限制挂起)
poolPreparedStatements:开启池的prepared(默认是false,未调整,经过测试,开启后的性能没有关闭的好。)
maxOpenPreparedStatements:开启池的prepared 后的同时最大连接数(默认无限制,同上,未配置)
minEvictableIdleTimeMillis :连接池中连接,在时间段内一直空闲, 被逐出连接池的时间
(默认为30分钟,可以适当做调整,需要和后端服务端的策略配置相关)
removeAbandonedTimeout :超过时间限制,回收没有用(废弃)的连接(默认为 300秒,调整为180)
removeAbandoned :超过removeAbandonedTimeout时间后,是否进 行没用连接(废弃)的回收(默认为false,调整为true)
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="xxxx" />
<property name="username"><value>xxxx</value></property>
<property name="password"><value>xxxxx</value></property>
<property name="maxActive"><value>20</value></property>
<property name="initialSize"><value>1</value></property>
<property name="maxWait"><value>60000</value></property>
<property name="maxIdle"><value>20</value></property>
<property name="minIdle"><value>3</value></property>
<property name="removeAbandoned"><value>true</value></property>
<property name="removeAbandonedTimeout"><value>180</value></property>
<property name="connectionProperties"><value>clientEncoding=GBK</value></property>
</bean>
参数
默认值
描述
defaultAutoCommit |
true |
连接池创建的连接的默认的auto-commit状态 |
defaultReadOnly |
driver default |
连接池创建的连接的默认的read-only状态. 如果没有设置则setReadOnly方法将不会被调用. (某些驱动不支持只读模式,比如:Informix) |
defaultTransactionIsolation |
driver default |
连接池创建的连接的默认的TransactionIsolation状态. 下面列表当中的某一个: (参考javadoc)
- NONE
- READ_COMMITTED
- READ_UNCOMMITTED
- REPEATABLE_READ
- SERIALIZABLE
|
defaultCatalog |
|
连接池创建的连接的默认的catalog |
分享到:
相关推荐
本文主要探讨了三个常用的数据库连接池:DBCP、c3p0和Druid,以及它们的配置说明。 1. **DBCP(Apache Commons DBCP)** DBCP是Apache Commons项目的一部分,它依赖于Apache Commons Pool对象池机制来管理数据库...
以下是一些主要的配置参数及其说明: 1. `username` 和 `password`:这两个参数用于设置连接数据库所需的用户名和密码,它们会被传递给JDBC驱动进行身份验证。 2. `url`:这是数据库的JDBC URL,用于指定数据库的...
"使用说明.txt"可能包含有关如何在项目中配置和使用DBCP的详细步骤,包括但不限于: 1. 添加依赖:在Maven的pom.xml文件或Gradle的build.gradle文件中声明对DBCP的依赖。 2. 配置数据源:在Spring的配置文件中,...
1. `commons-dbcp-1.4-javadoc.jar`:这个文件包含了DBCP 1.4版本的API文档,开发者可以查阅其中的类和方法说明,了解如何使用DBCP来建立和管理数据库连接池。 2. `commons-dbcp-1.4.jar`:这是DBCP的核心库,包含...
标签中的“不用编写更多代码配置”XML" 导入dbcp包 即可连库”,说明了Apache Commons DBCP的易用性。通常,我们可以通过XML配置文件来设置DBCP连接池的各项参数,如最大连接数、最小连接数、超时时间等。只需要在...
DBCP通过维护一组预配置的数据库连接,可以有效地管理和复用这些连接,从而提高应用性能并减少数据库资源的消耗。它依赖于Apache Commons Pool库来处理连接的生命周期。 3. **commons-pool-1.5.6.jar**:这是Apache...
"commons-dbcp2 api文档 最新版"意味着这个压缩包包含了最新的API接口说明,这对于理解和使用DBCP2库非常重要。API文档通常会详细列出所有类、方法、接口以及它们的用途,帮助开发者知道如何正确地配置和操作数据库...
API文档,通常以Javadoc的形式存在,提供了关于DBCP2库中所有公共类、接口和方法的详细说明。开发者可以通过查阅这些文档,了解如何创建、配置和管理数据库连接池,以及如何在代码中使用DBCP2的相关类。 例如,`...
在配置DBCP连接池时,你通常需要设置以下属性: - `driverClassName`:Oracle JDBC驱动的全限定类名,例如`oracle.jdbc.driver.OracleDriver`。 - `url`:Oracle数据库的连接URL,格式一般为`jdbc:oracle:thin:@...
4. **配置灵活性**:DBCP允许通过属性设置来配置连接池的大小、超时时间、最大空闲时间等,以适应不同的应用需求和性能优化策略。 5. **异常处理**:DBCP处理数据库连接的异常情况,例如连接失败,它可以自动关闭坏...
以下是对Druid数据库连接池的一些主要配置属性的详细说明: 1. **initialSize**:初始化连接池时创建的连接数量。设置合理的初始大小可以避免系统启动时的性能波动。 2. **minIdle**:最小空闲连接数,即使在空闲...
在使用DBCP时,你需要配置相关的属性,例如: - **initialSize**:初始化时创建的连接数。 - **maxActive**:最大活动连接数。 - **maxIdle**:最大空闲连接数。 - **minIdle**:最小空闲连接数。 - **maxWait**:...
3. **示例代码**:如果有的话,可能会有示例代码或配置文件示例,帮助用户快速理解和设置DBCP连接池。 4. **许可证文件**:Apache Software License 2.0,明确该库的使用、分发和修改的条款。 5. **依赖库**:DBCP...
- 在`hibernate.cfg.xml`文件中设置以下属性来配置DBCP连接池: ```xml <property name="connection.provider_class">org.apache.commons.dbcp.BasicDataSource <property name="dbcp.maxActive">100 ...
【三大连接池参数详解】 ...总结来说,三大连接池——DBCP、C3P0 和 Proxool,各有其特点和配置选项。选择合适的连接池并正确配置这些参数,能够提高数据库操作的效率,减少资源消耗,并确保系统的稳定运行。
最后,我们看到配置文件的片段中似乎还有另一个bean的定义,但是由于内容不完整,无法提供具体的解释。通常,这个bean可能是业务层的一个组件,比如一个服务类,它会依赖DAO来完成对数据库的操作。 综上所述,`...
要监控连接池的状态,可以启用DBCP的日志功能,配置`commons-dbcp.properties`文件,设置`debug`和`logAbandoned`属性为`true`,并通过`commons-logging.properties`配置日志输出。 通过以上步骤,你已经完成了...
本文将详细介绍如何在MyEclipse环境中配置DBCP连接池。 首先,我们需要准备必要的库文件。DBCP连接池依赖于几个Apache Commons组件以及SQL Server的驱动,具体包括: 1. `commons-collections4-4.0.jar`:提供集合...
以下是对SSH框架整合及XML配置文件的详细说明: 1. **Struts.xml配置文件**: Struts 2是基于MVC设计模式的Java Web框架,负责处理用户的请求并返回相应的视图。在`struts.xml`文件中,`<action>`标签定义了请求到...
本教程将详细介绍如何在Spring MVC与JPA的整合中,去除传统的`persistence.xml`配置文件,转而使用属性文件来配置数据源以及DBCP(BasicDataSource)连接池来访问数据库。 首先,我们需要了解Spring MVC和JPA的基本...