数据库连接池配置总结

版权声明:本文为博主原创文章,转载请附带原链接地址 。 https://blog.csdn.net/weixin_43652442/article/details/86625197

DBCP数据源配置参数说明

  • defaultAutoCommit:设置从数据源中返回的连接是否采用自动提交机制,默认值为 true
  • defaultReadOnly:设置数据源是否仅能执行只读操作, 默认值为 false
  • maxActive:最大连接数据库连接数,设 非正数 为没有限制 ,默认值8
  • maxIdle:最大空闲连接:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表示不限制 ,默认值8
  • minIdle:最小空闲连接:连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为0则不创建 ,默认值0
  • maxWait:最大等待时间:当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为-1表示无限等待 ,默认值无限
  • removeAbandoned:是否自动回收超时连接,默认是 false
  • initialSize:初始化连接数:连接池启动时创建的初始化连接数量,默认值0
  • removeAbandonedTimeout:几秒后数据连接会自动断开,在removeAbandoned为true时,提供该值
  • logAbandoned:连接被泄露时是否打印, 默认为 false
  • validationQuery:用于验证连接是否成功的查询SQL语句,SQL语句必须至少要返回一行数据, 如你可以简单地设置为:“select count(*) from user”
  • timeBetweenEvictionRunsMillis:在空闲连接回收器线程运行期间休眠的时间值(以毫秒为单位).(一般用不到,可以不设置)
  • numTestsPerEvictionRun:在每次空闲连接回收器线程(如果有)运行时检查的连接数量.(一般用不到,可以不设置)
  • minEvictableIdleTimeMillis:连接在池中保持空闲而不被空闲连接回收器线程.(一般用不到,可以不设置)
  • testOnBorrow:指明是否在从池中取出连接前进行检验,默认值true
  • testOnReturn:指明是否在归还到池中前进行检验,默认值false

oracle数据库的DBCP配置示例如下,设定destroy-method=”close”属性,则Spring容器关闭时,数据源能够正常关闭

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"         
        destroy-method="close">
        <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> 
        <property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:orcle" /> 
        <property name="username" value="user1" /> 
        <property name="password" value="12345" /> 
        <property name="defaultAutoCommit" value="false"></property>
        <property name="initialSize" value="5"></property>
        <property name="maxActive" value="10"></property>
        <property name="maxIdle" value="5"></property>
        <property name="minIdle" value="2"></property>
        <property name="maxWait" value="200"></property>
        <property name="removeAbandoned" value="true"></property>
        <property name="removeAbandonedTimeout" value="10"></property>
        <property name="validationQuery" value="select * from dual"></property>
    </bean>

猜你喜欢

转载自blog.csdn.net/weixin_43652442/article/details/86625197
今日推荐