zoukankan      html  css  js  c++  java
  • springboot 使用c3p0数据库连接池的方法

      使用springboot开发时,默认使用内置的tomcat数据库连接池,经常碰到这种情况:运行时间一长,数据库连接中断了。所以使用c3p0连接池吧。

      引入的maven依赖:

    <dependency>
          <groupId>c3p0</groupId>
          <artifactId>c3p0</artifactId>
          <version>0.9.1.2</version>
    </dependency>

      c3p0的配置信息,写到application.properties配置文件中,需要注意的是,c3p0的数据库用户名是user不是username:

    c3p0.jdbcUrl=jdbc:mysql://ip:port/dnname?useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false
    c3p0.user=${username}
    c3p0.password=${password}
    c3p0.driverClass=com.mysql.jdbc.Driver
    c3p0.minPoolSize=2
    c3p0.maxPoolSize=10
    c3p0.maxIdleTime=1800000
    c3p0.acquireIncrement=3
    c3p0.maxStatements=1000
    c3p0.initialPoolSize=3
    c3p0.idleConnectionTestPeriod=60
    c3p0.acquireRetryAttempts=30
    c3p0.acquireRetryDelay=1000
    c3p0.breakAfterAcquireFailure=false
    c3p0.testConnectionOnCheckout=false

      springboot配置c3p0数据源datasource:

     1 @Configuration
     2 public class DatasourceConfiguration {
     3 
     4     @Bean(name = "dataSource")
     5     @Qualifier(value = "dataSource")
     6     @Primary
     7     @ConfigurationProperties(prefix = "c3p0")
     8     public DataSource dataSource()
     9     {
    10         return DataSourceBuilder.create().type(com.mchange.v2.c3p0.ComboPooledDataSource.class).build();
    11     }
    12 }

      对于其他的一些数据源也可使用类似方式,当然有些数据源springboot提供了更加简洁的方式,需要参数官方文档。

  • 相关阅读:
    HDU 4920 Matrix multiplication
    UVALive 5545 Glass Beads
    POJ 2230 Watchcow
    hdu 1878 欧拉回路
    hdu 3018 Ant Trip
    2015 Multi-University Training Contest 1 hdu 5296 Annoying problem
    深入理解php内核 编写扩展 I:介绍PHP和Zend
    PHP数组实际占用内存大小的分析
    深入理解php底层:php生命周期
    PHP实现的进度条效果详解
  • 原文地址:https://www.cnblogs.com/xiaosiyuan/p/6255292.html
Copyright © 2011-2022 走看看