连接池
c3p0
1.导入两个jar包
2.定义配置文件,名字必须是这两个里面的: c3p0.properties 或者 c3p0-config.xml
3.创建核心对象 连接池对象 ComboPooledDataSource
4.获取连接 getConnection
c3p0-0.9.5.2.jar
mchange-commons-java-0.2.12.jar
package com.itde.demo5;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;
public class TestDemo5 {
public static void main(String[] args) throws SQLException {
//C3P0
//创建连接池对象
ComboPooledDataSource ds = new ComboPooledDataSource();
//获取连接对象
Connection cn = ds.getConnection();
//
System.out.println(cn);
}
}
DBCP
1.引入DBCP连接池的jar包
2.编写DBCP代码 {
1.手动设置参数
2.配置文件设置参数
}
3.写代码
commons-dbcp-1.2.jar
commons-pool-1.6.jar
package com.itde.demo6;
import org.apache.commons.dbcp.BasicDataSource;
import java.sql.Connection;
import java.sql.SQLException;
public class TestDemo6 {
//DBCP
public static void main(String[] args) throws SQLException {
BasicDataSource bds = new BasicDataSource();
Connection cn = bds.getConnection();
cn.close();
}
}
Druid
1.引入jar
druid-1.0.9.jar
2.定义配置文件
druid.properties
3.写代码
```css
package com.itde.demo7;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties;
public class TestDemo7 {
public static void main(String[] args) throws Exception {
//Druid
//Properties从流中取数据的类
Properties pro = new Properties();
//类名.class(获取字节码文件).getClassLoader().getResourceAsStream("druid.properties")(返回一个流);
InputStream is = TestDemo7.class.getClassLoader().getResourceAsStream("druid.properties");
//从流中读取数据
pro.load(is);
//创建一个连接池对象(通过工厂)
DataSource ds = DruidDataSourceFactory.createDataSource(pro);
//获取连接
Connection connection = ds.getConnection();
System.out.println(connection);
}
}
DBUtils
3个核心类
1.QueryRunner:对sql语句进行操作
2.ResultSetHandler:用于处理结果集
3.DBUtils:工具类,用来关闭连接和事务处理的方法