C3P0连接池的配置和使用

1.1 C3p0连接池的简介

  • C3P0地址:https://sourceforge.net/projects/c3p0/?source=navbar C3P0是一个开源的连接池。Hibernate框架,默认推荐使用C3P0作为连接池实现。 C3P0的jar包:c3p0-0.9.1.2.jar

C3P0连接池jar包(完整版)百度网盘链接:https://pan.baidu.com/s/1dAOVaZJP9DxXh81kgZ-HbA 密码:u711 

1.2 常用的配置参数

参数 说明
initialPoolSize  初始连接数
maxPoolSize 最大连接数
checkoutTimeout 最大等待时间
maxIdleTime 最大空闲回收时间
  1. 初始连接数:刚创建好连接池的时候准备的连接数量
  2. 最大连接数:连接池中最多可以放多少个连接
  3. 最大等待时间:连接池中没有连接时最长等待时间
  4. 最大空闲回收时间:连接池中的空闲连接多久没有使用就会回收

C3P0连接池的配置和使用_第1张图片

2.1  C3p0的基本使用

  1. 拷贝c3p0的jar到lib目录  (c3p0-0.9.5.2.jar , mchange-commons-java-0.2.12.jar)
  2. 把配置文件c3p0.xmla拷贝到src目录下(配置文件名一定不能修改,而且必须拷贝到src目录下
  3. 创建c3p0连接池.
  • ComboPooledDataSource核心类:
  • getConnection(); 
package C3p0;

import com.mchange.v2.c3p0.ComboPooledDataSource;

import java.sql.Connection;
import java.sql.SQLException;

public class Demo01 {
    public static void main(String[] args) throws SQLException {
        //C3p0的一个类
         ComboPooledDataSource DataSource = new ComboPooledDataSource();
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        Connection connection = DataSource.getConnection();
        System.out.println("连接:"+connection);
        connection.close();
        System.out.println("连接:"+DataSource.getConnection());

    }
}

2.1.1使用指定配置文件名字的C3p0:


    com.mysql.jdbc.Driver
    jdbc:mysql://localhost:3306/mysql
    root
    root

    5
    10
    3000
  
package C3p0;

import com.mchange.v2.c3p0.ComboPooledDataSource;

import java.sql.Connection;
import java.sql.SQLException;

public class Demo01 {
    public static void main(String[] args) throws SQLException {
        //C3p0的一个类
         ComboPooledDataSource DataSource = new ComboPooledDataSource("otherc3p0");
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        System.out.println("连接:"+DataSource.getConnection());
        Connection connection = DataSource.getConnection();
        System.out.println("连接:"+connection);
        connection.close();
        System.out.println("连接:"+DataSource.getConnection());

    }
}

 


  • c3p0-config.xml配置文件 


  
    com.mysql.jdbc.Driver
    jdbc:mysql://localhost:3306/test
    root
    root
    
    5
    10
    3000
  

  
    com.mysql.jdbc.Driver
    jdbc:mysql://localhost:3306/mysql
    root
    root

    5
    10
    3000
  

 

你可能感兴趣的:(JDBC)