一、C3P0框架:
1、数据库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:///classwork</property>
<property name="user">root</property>
<property name="password">9919</property>
<property name="initialPoolSize">5</property>
<property name="maxPoolSize">20</property>
</default-config>
<named-config name="michong">
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql:///classwork</property>
<property name="user">root</property>
<property name="password">9919</property>
</named-config>
</c3p0-config>
<default-config>
是
new ComboPooledDataSource()
加载的
<named-config name="michong">
是
new ComboPooledDataSource("michong")
加载的
2、从帮助文档中获得c3p0-config.xml并修改相应的参数
二、DBCP框架的使用:
用到的jar包
常用的配置项
3、自定义工具类:C3P0Utils:
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class C3P0Utils {
private static DataSource ds = new ComboPooledDataSource();
//获取连接池对象
public static DataSource getDataSource(){
return ds;
}
//获取Connection对象
public static Connection getConnection(){
Connection conn;
try {
conn = ds.getConnection();
return conn;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
throw new RuntimeException();
}
}
二、DBCP框架的使用:
1、
配置文件
配置文件名称:*.properties
配置文件位置:任意,建议src (classpath/
类路径)
配置文件内容:properties
不能编写中文,必须使用记事本修改内容,否则中文注释就乱码了。
常用配置项
2、封装的DBCPUtils类:
public class DBCPUtils {
private static DataSource ds ;
static{
try {
//加载配置文件
InputStream is = DBCPUtils.class.getClassLoader().getResourceAsStream("conninfo.properties");
Properties p = new Properties();
p.load(is);
//通过DBCP获得连接池
ds = BasicDataSourceFactory.createDataSource(p);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//获得连接池
public static DataSource getDataSource(){
return ds;
}
//获得连接对象
public static Connection getConnection() throws SQLException{
return ds.getConnection();
}
}
用到的jar包