开源数据库连接池C3P0,DBCP的使用
来源:互联网 发布:利用软件漏洞获利 编辑:程序博客网 时间:2024/05/21 17:30
本篇文章主要讲解C3P0、DBCP两个开源数据库连接池的使用,不涉及一些性能方面,我也只是刚刚了解,下面步入正题:
1. DBCP
DBCP是apache的java数据库连接池开源项目,大家可以到apache官网上下载dbcp的jar包,但由于这个dbcp又依赖apache的另外两个组件(pool,collection),共三个jar包dbcp:http://commons.apache.org/proper/commons-dbcp/download_dbcp.cgi
pool : http://commons.apache.org/proper/commons-pool/download_pool.cgi
collection:http://commons.apache.org/proper/commons-collections/download_collections.cgi
建议大家下载的时候不要下载高版本的,高版本稳定性不太好,差不多兼容jdk1.5以后就行了。
以上三个jar下载好之后导入自己要是用的工程,当然了,如果要链接数据库当然要有数据库的驱动jar包,在工程的根目录下创建一个dbcp.properties的配置文件,我的配置如下:
driverClassName=com.mysql.jdbc.Driverurl=jdbc\:mysql\://localhost\:3306/ahpuusername=rootpassword=123defaultAutoCommit=trueinitialSize=3maxActive=10maxIdle=3minIdle=1maxWait=-1下面就是编写如何使用dbcp,具体的我不一一说明了,下面是我的java文件,大家自己看吧:
package com.datasource;import java.io.FileInputStream;import java.io.InputStream;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSourceFactory;public class DataSourceManager {private static DataSourceManager instance = new DataSourceManager();private DataSource pool = null;private DataSourceManager(){init();}public void init(){Properties prop = null;InputStream is = null;try {prop = new Properties();is = new FileInputStream("dbcp.properties");prop.load(is);pool = BasicDataSourceFactory.createDataSource(prop);} catch (Exception e) {e.printStackTrace();}}public static DataSourceManager getInstance(){return instance;}public Connection getConnection(){Connection conn = null;try {conn = pool.getConnection();} catch (SQLException e) {e.printStackTrace();}System.out.println(conn.getClass());return conn;}}
下载过之后,里面有两个jar包,导入到工程即可,首先也要在工程根目录建一个配置文件c3p0.properties,名字起啥都无所谓,内容和上面配置文件内容一样,以下是我的实例代码
package com.datasource;import java.beans.PropertyVetoException;import java.io.FileInputStream;import java.io.InputStream;import java.sql.Connection;import java.sql.SQLException;import java.util.Properties;import com.mchange.v2.c3p0.ComboPooledDataSource;public class DataBaseManager {private static DataBaseManager instance = new DataBaseManager();private ComboPooledDataSource cpds = null;private DataBaseManager(){init();}private void init(){cpds = new ComboPooledDataSource();Properties prop = readConfig();try {cpds.setDriverClass(prop.getProperty("driverClassName"));} catch (PropertyVetoException e) {e.printStackTrace();}cpds.setUser(prop.getProperty("username"));cpds.setPassword(prop.getProperty("password"));cpds.setJdbcUrl(prop.getProperty("url"));}private Properties readConfig(){Properties prop = new Properties();try{InputStream is = new FileInputStream("c3p0.properties");prop.load(is);}catch (Exception e) {e.printStackTrace();}return prop;}public static DataBaseManager getInstance(){return instance;}public Connection getConnection(){Connection conn = null;try {conn = cpds.getConnection();} catch (SQLException e) {e.printStackTrace();}return conn;}}
0 0
- 开源数据库连接池C3P0,DBCP的使用
- 数据库连接池 dbcp与c3p0的使用
- dbcp,c3p0数据库连接池的使用
- 数据库连接池 dbcp与c3p0的使用
- 数据库连接池(数据源)2: 开源数据源的使用DBCP和C3P0
- mysql笔记八——开源数据库连接池DBCP和C3P0的使用
- 数据库连接池 dbcp与c3p0的使用区别
- 数据库连接池c3p0/dbcp
- Java常用的数据库连接池【c3p0】【dbcp】
- dbcp,c3p0,druid数据库连接池的浅析
- C3P0和DBCP数据库连接池的
- dbcp、c3p0 数据库连接池解释
- DBCP与C3P0数据库连接池
- 数据库连接池c3p0和dbcp
- 数据库连接池DBCP和C3P0
- JDBC 数据库连接池 -Dbcp -C3p0
- 数据库连接池(DBCP C3P0)
- 数据库连接池c3p0和dbcp
- 正则表达式(二)
- Android JNI详细开发有图有真相
- android中Invalidate和postInvalidate的区别
- Linux中vi的环境设置和其他常用设置
- hadoop2.4的datanode服务启动不了
- 开源数据库连接池C3P0,DBCP的使用
- c语言指针初探 一指针与引用
- log4j文件配置properties,输出到控制台,文件,数据库等各种配置
- js综合能力提升 闭包 继承等等
- libvlc外部api的简单整理
- apue.h 配置(转)
- Uploadify--JQuery的上传插件
- STM32时钟系统
- s3c6410 Linux 驱动开发环境搭建