dbcp的中文文档帮助 http://blog.csdn.net/recall03/article/details/19430379
dbcp : 通过
    // 新建一个基础数据源
            BasicDataSource basicDataSource = new BasicDataSource();
basicDataSource.连接数据库的信息,保存
然后
    // 新建一个数据库链接工厂 进行生产    基于连接数据库的这个产品去生产
            ConnectionFactory = new DataSourceConnectionFactory(basicDataSource);
数据库的连接就改为 工厂.属性 conn = ConnectionFactory.createConnection();
c3p0:
c3p0 = new ComboPooledDataSource();
数据库的连接就改为 conn = c3p0.getConnection();
| 参数 | 描述 | 
|---|---|
| username | 传递给JDBC驱动的用于建立连接的用户名 | 
| password | 传递给JDBC驱动的用于建立连接的密码 | 
| url | 传递给JDBC驱动的用于建立连接的URL | 
| driverClassName | 使用的JDBC驱动的完整有效的java 类名 | 
| connectionProperties | 当建立新连接时被发送给JDBC驱动的连接参数,格式必须是 [propertyName=property;]* 注意:参数user/password将被明确传递,所以不需要包括在这里。  | 
| 参数 | 默认值 | 描述 | 
|---|---|---|
| defaultAutoCommit | true | 连接池创建的连接的默认的auto-commit状态 | 
| defaultReadOnly | driver default | 连接池创建的连接的默认的read-only状态. 如果没有设置则setReadOnly方法将不会被调用. (某些驱动不支持只读模式,比如:Informix) | 
| defaultTransactionIsolation | driver default | 连接池创建的连接的默认的TransactionIsolation状态. 下面列表当中的某一个: (参考javadoc)
  | 
| defaultCatalog | 连接池创建的连接的默认的catalog | 
| 参数 | 默认值 | 描述 | 
|---|---|---|
| initialSize | 0 | 初始化连接:连接池启动时创建的初始化连接数量,1.2版本后支持 | 
| maxActive | 8 | 最大活动连接:连接池在同一时间能够分配的最大活动连接的数量, 如果设置为非正数则表示不限制 | 
| maxIdle | 8 | 最大空闲连接:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表示不限制 | 
| minIdle | 0 | 最小空闲连接:连接池中容许保持空闲状态的最小连接数量,低于这个数量将创建新的连接,如果设置为0则不创建 | 
| maxWait | 无限 | 
 最大等待时间:当没有可用连接时,连接池等待连接被归还的最大时间(以毫秒计数),超过时间则抛出异常,如果设置为-1表示无限等待  | 
来源:https://www.cnblogs.com/1950137408lxj/p/8482153.html