0
点赞
收藏
分享

微信扫一扫

c3p0连接池


C3P0连接池


最常用的连接池技术!Spring框架,默认支持C3P0连接池技术!


C3P0连接池,核心类:


CombopooledDataSource ds;


使用方法:

引入jar文件:  c3p0-0.9.1.2.jar ​​点击打开链接​​

使用连接池,创建连接

硬编码方式

配置方式(xml)

Demo案例


package com.cn.c3p0;

import java.sql.Connection;

import org.junit.Test;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class C3p0Test {

/**
* 1.硬编码方式,使用c3p0连接池管理连接
* @throws Exception
*/
@Test
public void testCode() throws Exception {
//创建c3p0连接池核心工具类
ComboPooledDataSource dataSource = new ComboPooledDataSource();
//设置连接池参数:url,驱动字符串、用户密码、初始连接数、最大连接数url、driverClassName、username、password、initialSize、maxActive
dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/mydb");
dataSource.setDriverClass("com.mysql.jdbc.Driver");
dataSource.setUser("root");
dataSource.setPassword("root");
dataSource.setInitialPoolSize(3);
dataSource.setMaxPoolSize(6);
dataSource.setMaxIdleTime(1000);

//从连接池对象中获取连接对象
Connection conn = dataSource.getConnection();
//执行更新
conn.prepareStatement("delete from users where id = 7").executeUpdate();
//关闭
conn.close();
}

/**
* 2.XML配置方式,使用c3p0连接池管理连接
* @throws Exception
*/
@Test
public void testXML() throws Exception {
//创建c3p0连接池核心工具类
ComboPooledDataSource dataSource = new ComboPooledDataSource();//调用默认的配置default-config,自动加载src下c3p0的配置文件【c3p0-config.xml】,注意xml文件名固定
// ComboPooledDataSource dataSource = new ComboPooledDataSource("c3p0的配置文件中命名的配置");
//从连接池对象中获取连接对象
Connection conn = dataSource.getConnection();
//执行更新
conn.prepareStatement("delete from users where id = 10").executeUpdate();
//关闭
conn.close();
}
}




c3p0-config.xml


<c3p0-config>
<!-- 默认配置 -->
<default-config>
<property name="jdbcUrl">jdbc:mysql://localhost:3306/mydb</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="user">root</property>
<property name="password">root</property>
<property name="initialPoolSize">3</property>
<property name="maxPoolSize">6</property>
<property name="maxIdleTime">1</property>

<user-overrides user="swaldman">
<property name="debugUnreturnedConnectionStackTraces">true</property>
</user-overrides>


</default-config>

<!-- c3p0核心工具类根据传入的参数configName字符串来调用此配置 -->
<named-config name="oracle_Config">
<property name=""></property>
<property name=""></property>
</named-config>

</c3p0-config>

举报

相关推荐

0 条评论