c3p0是一个很小的jar包,是Jdbc的优化,下面我来为大家介绍一下使用方法
一、导入Jar包,在本文的最下面的资源中有提供下载
二、在src中命名一个c3p0-config.xml的xml
<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<default-config>
<property name="initialPoolSize">10</property><!-- 数据库连接池初始化10条连接-->
<property name="maxPoolSize">30</property><!-- 最大连接数 -->
<property name="driverClass">com.mysql.jdbc.Driver</property><!-- 数据库的驱动 -->
<property name="jdbcUrl">jdbc:mysql://localhost:3306/resources</property><!-- 你要连接的数据库 -->
<property name="user">root</property><!-- 用户名 -->
<property name="password">7681810810</property><!-- 数据库密码 -->
</default-config>
</c3p0-config>
上面的是默认的配置,如果你自己要定义,就要自己另外在default-config外面定义一样的内容,就会读取default-config外面的配置文件
三、使用配置文件,来获取连接
package com.itcast.utils;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.sql.DataSource;
import com.itcast.exception.UtilsException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class JdbcUtils {
private static DataSource ds = new ComboPooledDataSource();//这句话是读取配置文件并获取连接池
一句话就解决战斗了
public static DataSource getDatasource() {
return ds;
}
public static Connection getConnection() {
try {
return ds.getConnection();
} catch (SQLException e) {
throw new UtilsException(e);
}
}
public static void release(Connection conn, Statement stmt, ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
throw new UtilsException(e);
}
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
throw new UtilsException(e);
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
throw new UtilsException(e);
}
}
}
}