数据库:c3p0链接池的基本使用与配置文件使用
1.c3p0简介:
c3p0 开源免费的连接池!
2.c3p0的使用
c3p0中池类是:ComboPooledDataSource
第一种方式 下面代码 fun1
3.配置文件的要求:
- 文件名称必须叫 : c3p0-config.xml
- 文件位置必须在 src 下.
c3p0-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<!-- 使用默认的配置读取连接池对象 -->
<default-config>
<!-- 连接参数 -->
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/sql1</property>
<property name="user">root</property>
<property name="password">root</property>
<!-- 连接池参数 -->
<!--初始化申请的连接数量-->
<property name="initialPoolSize">5</property>
<!--最大的连接数量-->
<property name="maxPoolSize">10</property>
<!--超时时间-->
<property name="checkoutTimeout">3000</property>
</default-config>
<!-- 专门为oracle提供的配置信息 -->
<named-config name="oracle-config">
<!-- 连接参数 -->
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/sql3</property>
<property name="user">root</property>
<property name="password">root</property>
<!-- 连接池参数 -->
<property name="initialPoolSize">5</property>
<property name="maxPoolSize">8</property>
<property name="checkoutTimeout">1000</property>
</named-config>
</c3p0-config>
package com.tinstu.demo;
import java.beans.PropertyVetoException;
import java.sql.Connection;
import java.sql.SQLException;
import org.junit.Test;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class demo {
@Test
public void fun1() throws PropertyVetoException,SQLException{
//创建连接池对象
ComboPooledDataSource dataSource = new ComboPooledDataSource();
//对池进行四大参数的配置
dataSource.setAcquireIncrement(5);
dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/sql1");
dataSource.setUser("root");
dataSource.setPassword("root"); ///基本配置
dataSource.setAcquireIncrement(5); //每次的增量为5
dataSource.setInitialPoolSize(20); //初始化链接数
dataSource.setMinPoolSize(2) ; // 最少链接数
dataSource.setMaxPoolSize(50) ; //最多链接数
Connection conn = dataSource.getConnection();
System.out.println(conn);
conn.close();
}
/**
* 配置文件的默认配置
* @throws SQLException
*/
public void fun2() throws SQLException {
ComboPooledDataSource dataSource = new ComboPooledDataSource();
/**
* 如果在这里加入新的链接参数,xml中的会被覆盖
*/
Connection conn = dataSource.getConnection();
System.out.println(conn);
conn.close();
}
/**
* 使用命名配置
*/
@Test
public void fun3() throws SQLException {
/**
* 构造器的参数指定命名配置元素的名称 :oracle-config
*/
ComboPooledDataSource dataSource = new ComboPooledDataSource("oracle-config");
/**
* 如果在这里加入新的链接参数,xml中的会被覆盖
*/
Connection conn = dataSource.getConnection();
System.out.println(conn);
conn.close();
}
}
阅读剩余
版权声明:
作者:Tin
链接:http://www.tinstu.com/931.html
文章版权归作者所有,未经允许请勿转载。
THE END