`

spring中配置dbcp连接池

阅读更多

使用ApplicationServer级别的连接池, 在ApplicationServer内的几个webapp间共享连接池以节约总的连接数,也可以为每个webapp独立分配以保证关键应用的供应。

 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<bean id= "dataSourceDbcp"
         class = "org.apache.commons.dbcp.BasicDataSource" scope= "singleton" >
         <property name= "driverClassName" >
             <value>oracle.jdbc.driver.OracleDriver</value>
         </property>
         <property name= "url" >
             <value>jdbc:oracle:thin: @10 .78. 222.131 : 1521 :mos5100</value>
         </property>
         <property name= "username" >
             <value>inventory</value>
         </property>
         <property name= "password" >
             <value>inventory</value>
         </property>
         <property name= "initialSize" >
             <value> 3 </value>
         </property>
         <property name= "maxActive" >
             <value> 50 </value>
         </property>
     </bean>

( 以下内容摘在springside):

 

DBCP的性能配置主要是4个参数

#连接池启动时的初始值.

  • dbcp.initialSize=10

#连接池的最大值.

  • dbcp.maxActive=50

#最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止。

  • dbcp.maxIdle=20

#最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请。

  • dbcp.minIdle=5

一般这几个参数应该放在applicationContext.properties里方便部署时快速修改。

有两种配置风格,

  •   比如较少使用者的管理界面,平时的使用者不多,但瞬时可能会有较多的使用者,如Mini-Web,会设置一个较低的maxIdle 而设置较高的maxActive。
  •   比如长期高负荷运行的业务系统,会设置一个合理的maxIdle值,且maxActive==maxIdle
长期idle连接的处理:

Mysql服务端会断开超过8小时的空闲连接,如果系统只在白天工作时间被使用,DBCP的连接就很容易被断开的连接,而且DBCP对jdbc url里设置autoReconnect=true是无效。

更好的做法DBCP主动断开超时的连接。

#运行判断连接超时任务的时间间隔,单位为毫秒,默认为-1,即不执行任务。
timeBetweenEvictionRunsMillis=3600000

#连接的超时时间,默认为半小时。
minEvictableIdleTimeMillis=3600000

 

经测试,按上面的设置,DBCP会在连接idle两小时后将其断开。

分享到:
评论

相关推荐

    DBCP连接池

    在SSH(Spring、Struts和Hibernate)这样的经典企业级开发框架中,DBCP连接池是一个常用的数据库管理工具。 1. **数据库连接池概念**:数据库连接池是在应用服务器启动时创建的,它会预先建立一定数量的数据库连接...

    dbcp连接池常用包

    在标题"dbcp连接池常用包"中,"常用包"指的是DBCP连接池所需的必备库文件,这些文件包含了DBCP的不同版本,分别为1.3、1.4和1.5。每个版本可能对应着不同的功能特性和修复的bug,开发者可以根据项目的兼容性和需求...

    dbcp连接池所需包

    在这个场景中,"dbcp连接池所需包"指的是用于配置和使用DBCP连接池的必要Java档案库(JAR包)。 首先,`commons-dbcp.jar`是DBCP的主要实现包,它包含了一系列用于管理和维护数据库连接的类和接口。这个库提供了...

    Spring连接池

    在Spring中配置DBCP连接池,可以通过以下方式: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"&gt; ``` 这里配置了数据库驱动类(driverClassName)、数据库URL(url...

    HibernateADD (hibernate和spring整合,使用dbcp连接池方式连接数据库)

    在IT行业中,数据库连接管理是应用系统开发中的关键环节,特别是在使用Java进行企业级开发时。...总之,整合Hibernate、Spring和DBCP连接池,可以构建出一个高效、灵活、易于维护的企业级数据库应用。

    dbcp连接池

    总结起来,DBCP连接池是Java应用程序中管理和复用数据库连接的重要工具,通过合理配置和使用,能够显著提升数据库操作的效率,同时降低系统资源的消耗。在压缩包中的`dbcp`文件可能包含了DBCP的完整库,可以直接导入...

    spring中 连接池的使用

    Apache的DBCP是Spring早期常见的连接池实现。在示例配置中,可以看到`&lt;bean&gt;`标签定义了一个名为`dataSource`的数据源实例,类为`org.apache.commons.dbcp.BasicDataSource`。配置参数包括: - `driverClassName`...

    关于DBCP数据库连接池配置整理宣贯.pdf

    在使用DBCP时,我们需要配置一系列参数来定制连接池的行为。以下是一些主要的配置参数及其说明: 1. `username` 和 `password`:这两个参数用于设置连接数据库所需的用户名和密码,它们会被传递给JDBC驱动进行身份...

    dbcp连接池jar包

    下面将详细介绍DBCP连接池、DBUtils以及如何在项目中配置和使用它们: 1. **DBCP连接池** DBCP连接池的工作原理是预先在内存中创建一定数量的数据库连接,当应用程序需要时,可以从池中获取一个已存在的连接,而...

    配置log4j配置数据库连接池(以dbcp连接池为例),并将log信息存储在数据库中(以mysql为例)

    数据源名`jdbc/LogDBCP`需要在Spring配置中声明,以关联到我们之前配置的DBCP连接池: ```xml &lt;bean id="LogDBCP" class="org.springframework.jndi.JndiObjectFactoryBean"&gt; ``` 最后,我们需要创建一个数据库...

    dbcp数据库连接池所需jar包

    使用DBCP数据库连接池,你需要在你的Java项目中引入这三个JAR文件,并进行相应的配置。以下是一些基本配置步骤: 1. 将这三个JAR文件添加到项目的类路径中。 2. 创建一个XML配置文件(如`dbcp-config.xml`),定义...

    dbcp连接池包

    使用DBCP连接池时,开发者通常需要编写配置代码,例如使用XML配置文件或者在代码中直接配置。下面是一个简单的XML配置示例: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" ...

    dbcp连接池所使用的jar和案例

    - 在Java应用中,需要通过XML或Java代码来配置DBCP连接池,包括设置初始化大小、最大连接数、超时时间、验证SQL等参数。 - 示例XML配置: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp....

    dbcp连接池所需jar(commons-collections-3.1.jar,commons-dbcp-1.2.jar,commons-pool-1.6.)

    在实际应用中,DBCP连接池可以与其他中间件如Spring框架集成,简化管理和配置。同时,DBCP也有其局限性,比如性能和稳定性相比一些现代的连接池如HikariCP稍弱。因此,随着技术的发展,一些项目可能已经转向了更高效...

    dbcp数据库连接池jar包

    综上所述,DBCP数据库连接池是Java Web开发中常用的一种数据库连接管理工具,通过合理的配置和使用,可以显著提高应用的性能和稳定性。在实际项目中,结合Spring等框架,可以更便捷地管理和使用数据库连接。确保正确...

    使用DBCP连接池所需要的jar包

    在DBCP中,这个库被用于辅助处理连接池中的数据结构,如连接池的配置信息。 3. **commons-pool-1.5.4.jar**:Apache Commons Pool是对象池化的实现,DBCP利用这个库来管理数据库连接,确保它们可以在多个请求之间...

    在飞实习学J2EE之路:12.9.5 Struts用DBCP连接池(登陆,注册)

    2. AOP(面向切面编程)集成:可以使用Struts的拦截器或者Spring AOP来注入数据源,使得每次数据库操作都能获取到连接池中的连接。 3. 数据访问对象(DAO)层:在DAO层的接口和实现类中,使用`BasicDataSource`获取...

    创建dbcp连接,dbcp(Spring)

    除了XML配置,还可以通过Java代码自定义实现DBCP连接池,如示例代码所示,创建一个名为`DbcpDataSource`的类,该类中包含获取DataSource、ConnectionFactory的方法,以及获取当前活跃连接数和最大活跃连接数的方法。...

Global site tag (gtag.js) - Google Analytics