数据库连接池——C3P0

Posted duguangming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库连接池——C3P0相关的知识,希望对你有一定的参考价值。

定义:  

  本质上就是个容器(集合)存放数据库连接的容器当系统初始化以后容器被创建容器中就会申请一些连接对象当用户来访问的数据库的时候从容器中取连接对象,用户用完之后归还。

使用方法:

  标准接口为javax.sql包下的Datasource。(一般不实现该接口,数据库厂商或者连接池厂商来实现这个接口)

  获得连接:getConnection();

  归还连接对象给连接池:Connection.close(); 

使用步骤:

    1  导包 两个包 c3p0-0.9.5.2.jar和mchange-commons-java-0.2.12

 

    2 定义配置文件 ( c3p0-config.xml) 路径:将文件放到src目录下

 

    3 创建核心对象,数据库连接池对象ComboPoolDataSource

 

    4 获取连接 getConnection

 

代码:

 

import com.mchange.v2.c3p0.ComboPooledDataSource;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;

/*c3p0的配置*/
public class C3P0demo2 {
    public static void main(String[] args) throws SQLException {
        //获取DataSource
        DataSource dataSource=new ComboPooledDataSource();
        //获得连接
        for (int i=1;i<=11;i++){
            Connection connection=dataSource.getConnection();
            System.out.println(i+"  "+connection);
            if (i==5){
                //归还连接池,归还后可以完成超过最大连接个数
                connection.close();
            }
        }
    }
}

 

 

  

以上是关于数据库连接池——C3P0的主要内容,如果未能解决你的问题,请参考以下文章

C3P0连接池的使用

c3p0数据库连接池管理

C3P0连接池工具类实现步骤及方法

数据库连接池c3p0

JAVA连接池技术

c3p0,dbcp与druid 三大连接池的区别[转]