您的位置:首页 > 其它

c3p0连接池的简单配置

2016-07-08 23:13 148 查看
c3p0是一个开源的jdbc连接池。它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。
目前使用它的开源项目有Hibernate,Spring等。


要用到的Jar包:



配置数据源(常用):

<c3p0-config>
<named-config name="myc3p0">
<!-- 指定连接数据源的基本信息 -->
<property name="user">scott</property>
<property name="password">scott</property>
<property name="driverClass">oracle.jdbc.driver.OracleDriver</property>
<property name="jdbcUrl">jdbc:oracle:thin:@localhost:1521:orcl</property>

<!-- 如果数据库中的连接池不足时,一次向数据库服务器申请的连接个数 -->
<property name="acquireIncrement">5</property>
<!-- 初始化数据库连接池的连接数 -->
<property name="initialPoolSize">5</property>
<!-- 数据库连接池中保存的最大的连接数 -->
<property name="minPoolSize">5</property>
<!-- 数据库连接池中保存的最小的连接数 -->
<property name="maxPoolSize">10</property>

<!-- c3p0数据库连接池可以维护的 Statement 个数 -->
<property name="maxStatements">20</property>
<!-- 每个连接同时可以使用的Statement对象的个数 -->
<property name="maxStatementsPerConnection">5</property>

</named-config>
</c3p0-config>


配置连接池:

package com.c3p0.test;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import com.mchange.v2.c3p0.ComboPooledDataSource;

public class JDBCC3P0Tools{

private static ComboPooledDataSource dataSource = null;

//数据库连接池只被初始化一次
static{
dataSource = new ComboPooledDataSource("myc3p0");
}

public static Connection getConnection() throws Exception{
return dataSource.getConnection();
}

public static void close(ResultSet rs, Connection conn, Statement stmt){
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c3p0 连接池