c3p0-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<default-config>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/zed</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="user">root</property>
<property name="password">123456</property>
<property name="acquireIncrement">3</property>
<property name="initialPoolSize">10</property>
<property name="minPoolSize">2</property>
<property name="maxPoolSize">10</property>
</default-config>
<!-- 专门为oracle提供的配置信息 -->
<named-config name="oracle-config">
<property name="jdbcUrl">jdbc:mysql://localhost:3306/zed</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="user">root</property>
<property name="password">123456</property>
<property name="acquireIncrement">3</property>
<property name="initialPoolSize">10</property>
<property name="minPoolSize">2</property>
<property name="maxPoolSize">10</property>
</named-config>
</c3p0-config>
工具类
package cn.taylor.jdbc;
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class jdbcUtils2 {
//配置文件的默认配置,要求必须给出c3p0-config.xml,位置在src下。
private static ComboPooledDataSource dataSource =new ComboPooledDataSource();
/*
* 使用连接池返回一个连接对象
*/
public static Connection getConnection() throws SQLException{
return dataSource.getConnection();
}
/*
* 返回连接池对象
*/
public static DataSource getDataSource(){
return dataSource;
}
}
案例
package cn.taylor.jdbc;
import java.beans.PropertyVetoException;
import java.sql.Connection;
import java.sql.SQLException;
import org.junit.Test;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class Demo1 {
/*
* 代码配置
*/
@Test
public void fun1() throws PropertyVetoException, SQLException{
ComboPooledDataSource dataSource = new ComboPooledDataSource();
dataSource.setDriverClass("com.mysql.jdbc.Driver");
dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/taylor");
dataSource.setUser("root");
dataSource.setPassword("123456");
Connection con= dataSource.getConnection();
System.out.println(con);
con.close();
}
/*
* 配置文件的默认配置
*/
@Test
public void fun2() throws SQLException{
/*
* 可以用xml文件写配置信息,也可以是properties文件
*/
/*
* 在创建连接池对象时,这个对象就会自动加载配置文件,不用我们指定。
* 但要注意的是xml命名和xml文件要放在src目录下。
*/
ComboPooledDataSource dataSource=new ComboPooledDataSource();
Connection con=dataSource.getConnection();
System.out.println(con);
con.close();
}
/*
* 使用命名配置
*/
@Test
public void fun3() throws SQLException{
/*
* 构造器的参数指定命名配置元素的名称
*/
ComboPooledDataSource dataSource=new ComboPooledDataSource("oracle-config");
Connection con=dataSource.getConnection();
System.out.println(con);
con.close();
}
}