本文共 2775 字,大约阅读时间需要 9 分钟。
Java为数据库连接池提供了公共的接口:javax.sql.DataSource
,各个厂商需要让自己的连接池实现这个接口。这样应用程序可以方便的切换不同厂商的连接池!
常见的第三方连接池如下:
使用步骤
com.mysql.jdbc.Driver jdbc:mysql://localhost:3306/day19 root root 5
c3p0连接池常用的配置参数:
参数 | 说明 |
---|---|
initialPoolSize | 初始连接数 |
maxPoolSize | 最大连接数 |
checkoutTimeout | 最大等待时间 |
maxIdleTime | 最大空闲回收时间 |
初始连接数
:刚创建好连接池的时候准备的连接数量
最大连接数
:连接池中最多可以放多少个连接 最大等待时间
:连接池中没有连接时最长等待时间 最大空闲回收时间
:连接池中的空闲连接多久没有使用就会回收 编写Java代码
/** * C3P0连接池的工具类 * */public class C3P0Utils { //1. 创建一个C3P0的连接池对象(会自动读取src目录下的c3p0-config.xml,所以不需要我们解析配置文件) public static DataSource ds = new ComboPooledDataSource(); //2. 提供 从连接池中 获取连接对象的方法 public static Connection getConnection() throws SQLException { Connection conn = ds.getConnection(); return conn; } //3. 提供 获得数据源(连接池对象)的方法 public static DataSource getDataSource(){ return ds; }}
Druid是阿里巴巴开发的号称为监控而生的数据库连接池,Druid是国内目前最好的数据库连接池。在功能、性能、扩展性方面,都超过其他数据库连接池。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。如:一年一度的双十一活动,每年春运的抢火车票。
Druid的下载地址:
DRUID连接池使用的jar包:druid-1.1.16.jar
步骤:
实现:
创建druid.properties, 放在src目录下
driverClassName=com.mysql.jdbc.Driverurl=jdbc:mysql://localhost:3306/day19username=rootpassword=root
编写Java代码
/** * 阿里巴巴的连接池 Druid 工具类 */public class DruidUtils { /* 1. 加载 druid.properties 配置文件 2. 创建 Druid 连接池对象 3. 提供 获得 连接池对象的方法 4. 提供 从连接池中 获取连接对象Connection的 方法 */ public static DataSource ds = null; static { try { //1. 加载 druid.properties 配置文件 InputStream is = DruidUtils.class.getClassLoader().getResourceAsStream("druid.properties"); Properties prop = new Properties(); prop.load(is); //2. 创建 Druid 连接池对象 ds = DruidDataSourceFactory.createDataSource(prop); } catch (Exception e) { e.printStackTrace(); } } /* 3. 提供 获得 连接池对象的方法 */ public static DataSource getDataSource(){ return ds; } /* 4. 提供 从连接池中 获取连接对象Connection的 方法 */ public static Connection getConnetion() throws SQLException { Connection conn = ds.getConnection(); return conn; }}
转载地址:http://htebn.baihongyu.com/