JAVA数据库连接池C3p0 以及阿里Druid提供的连接池
一:连接池的定义
本质上就是个容器(集合) 存放数据库连接的容器,当系统初始化后,容器被创建,容器中就会申请一些连接对象,当用户来访问数据库的时候,从容器中取连接对象,用户用完之后,归还。
二:常用的连接池的连接方法
1、C3p0连接方式:
步骤:
1 导包 两个包 c3p0-0.9.5.2.jar mchange-commons-java-0.2.12
2 定义配置文件 名称 c3p0.properties c3p0-config.xml
路径:将文件放到src目录下
3 创建核心对象 数据库连接池对象ComboPoolDataSource
4 获取链接 getConnection
代码如下:
package com.aaa.collection; import com.mchange.v2.c3p0.ComboPooledDataSource; import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException; public class C3p0Collection {
public static void main(String[] args) throws SQLException {
//获得DataSource
DataSource dataSource=new ComboPooledDataSource();
//获得连接
for (int i=1;i<=11;i++){
Connection conn=dataSource.getConnection();
System.out.println(i+" "+conn);
if(i==5){
conn.close();//归还连接池
}
}
}
}
2、Druid 阿里提供
步骤:
1 导包 durid1.0.9 jar包
2 定义配置文件 properties文件
名字任意位置也任意 加载文件
3 获得数据库连接池对象 通过DuridDataSourceFactory获得
4 获取链接
代码如下:
package com.aaa.collection; import com.aaa.Zuoye2.Durid;
import com.alibaba.druid.pool.DruidDataSourceFactory; import javax.sql.DataSource;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties; public class DuridCollection {
public static void main(String[] args) throws Exception {
/**
* 阿里的Durid连接池连接方式
* */
// 步骤:
// 1 导包 durid1.0.9 jar包
// 2 定义配置文件 properties文件
// 名字任意位置也任意 加载文件
Properties ps=new Properties();
InputStream in = Durid.class.getClassLoader().getResourceAsStream("durid.properties");
ps.load(in);
// 3 获得数据库连接池对象 通过DuridDataSourceFactory获得
DataSource ds = DruidDataSourceFactory.createDataSource(ps);
// 4 获取链接
Connection conn = ds.getConnection();
// 5打印输出测试是否连接成功
System.out.println(conn);
} }
JAVA数据库连接池C3p0 以及阿里Druid提供的连接池的更多相关文章
- c3p0数据库连接池 原创: Java之行 Java之行 5月8日 一、连接池概述 实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程
c3p0数据库连接池 原创: Java之行 Java之行 5月8日 一.连接池概述 实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程 DB连接池HikariCP为什么如此快 原创: D ...
- JDBC、DBCP、C3P0、jdbc-pool--链接方式?连接池?
连接方式: java连接数据库的四种方式 - Cece_2012的专栏 - CSDN博客http://blog.csdn.net/cece_2012/article/details/7485482 J ...
- spring下,druid,c3p0,proxool,dbcp四个数据连接池的使用和配置
由于那天Oracle的数据连接是只能使用dbcp的数据库连接池才连接上了,所以决定试一下当下所有得数据库连接池连接orcale和mysql,先上代码 配置文件的代码 #================ ...
- DBCP、C3P0、Proxool 、 BoneCP开源连接池的比《转》
简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 可以设置最大和最小连接,连接等待时 ...
- (转载)DBCP、C3P0、Proxool 、 BoneCP开源连接池的比较
原文链接: http://blog.csdn.net/miclung/article/details/7231553 简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta ...
- jdbc(1)(三)DBCP、C3P0、Proxool 、 BoneCP开源连接池的简介
简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 可以设置最大和最小连 ...
- 160629、 DBCP、C3P0、Proxool 、 BoneCP开源连接池的比较
简介 使用评价 项目主页 DBCP DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用 可以设置最大和最小连接,连接等 ...
- java通过代理创建Conncection对象与自定义JDBC连接池
最近学习了一下代理发现,代理其实一个蛮有用的,主要是用在动态的实现接口中的某一个方法而不去继承这个接口所用的一种技巧,首先是自定义的一个连接池 代码如下 import java.lang.reflec ...
- Java Redis系列3(Jedis的使用+jedis连接池技术)
Jedis的使用 什么是Jedis? 一款Java操作redis数据库的工具 使用步骤 1.下载redis所需的java包 2.使用步骤 import org.junit.Test; public c ...
随机推荐
- 文笔很差系列1 - 也谈谈AlphaGo
距离AlphaGo击败李世石已经过去数月了,心中的震撼至今犹在,全刊报道此项比赛的<围棋天地>杂志我已经看了不下十遍.总也想说点自己的意见,却也不知道从哪里说起,更不知道想表达些什么. 作 ...
- Semantic Compositionality through Recursive Matrix-Vector Spaces-paper
Semantic Compositionality through Recursive Matrix-Vector Spaces 作者信息:Richard Socher Brody Huval Chr ...
- centos7通过yum安装mysql,并授权远程连接 【转】
http://blog.csdn.net/u012367513/article/details/40538267 用于备忘
- 2018.4.27 python使用过的第三方库
Flask flask-login flask-sqlalchemy flask-mail psutil lvm2py oss2 python-ldap pyudev pyOpenSSL urllib ...
- cannot find package "context"
导入 github.com/go-sql-driver/mysql 和 database/sql 时,报cannot find package "context"的错误因为go1 ...
- design_patterns_in_typescript 学习
https://github.com/torokmark/design_patterns_in_typescript Creational Singleton [A class of which on ...
- Nginx网站实现ssl安全套接字
nginx.conf配置 server { listen 443 ssl; server_name www.example.com; ssl on; ssl_certificate cert.pem; ...
- zabbix之 zabbix server 跟 agent 更换ip地址
描述: zabbix server端跟agent端更改 ip . 改完之后,相应配置文件 (zabbix_agentd.conf.zabbix_server.conf)的ip也进行了替换 但是依旧报错 ...
- DL服务器主机环境配置(ubuntu14.04+GTX1080+cuda8.0)解决桌面重复登录
DL服务器主机环境配置(ubuntu14.04+GTX1080+cuda8.0)解决桌面重复登录 前面部分是自己的记录,后面方案部分是成功安装驱动+桌面的正解 问题的开始在于:登录不了桌面,停留在重复 ...
- golang http proxy反向代理
本文介绍golang中如何进行反向代理. 下面例子中, proxy server接收client 的 http request,转发给true server,并把 true server的返回结果再发 ...