c3p0 数据库连接池 demo

本文提供了一个c3p0数据库连接池的配置和使用DEMO,包括配置文件设置、DBC3p0Manager功能类的实现以及TestDBQuery测试函数的展示,帮助读者理解如何在实际应用中操作c3p0连接池。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近看了几个数据库连接池,打算每个连接池做个demo发一下,有需要的朋友可自行阅读


一、配置文件部分

1.配置文件:
路径:src下 DBDemo/src/c3p0.properties
名称必须为c3p0.properties
关于c3p0配置文件中每一条的具体含义不再赘述


2.文件内容
c3p0.driverClass=com.mysql.jdbc.Driver
c3p0.jdbcUrl=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
c3p0.user=admin

c3p0.password=admin


c3p0.acquireIncrement=3   
c3p0.idleConnectionTestPeriod=60      
c3p0.initialPoolSize=10   
c3p0.maxIdleTime=60   
c3p0.maxPoolSize=20   
c3p0.maxStatements=100    
c3p0.minPoolSize=5


3.配置文件中可能出现的问题
驱动一定要正确:driverClass=com.mysql.jdbc.Driver

地址一定要正确:jdbcUrl=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8


二、DBC3p0Manager(功能类)
此demo只为测试
如果要实际应用还需要定义连接关闭、自动提交、回滚等方法的


package com.test;


import java.sql.Connection;
import javax.sql.DataSource;
import com.mchange.v2.c3p0.ComboPooledDataSource;


public class DBC3p0Manager {


private static DataSource ds;  

// 直接使用、不需要显式的配置
static {  

ds = new ComboPooledDataSource();  
}

//获取一个db连接
public static Connection getConnection() {  
   
try {  
       Connection conn = null;  
       if (conn == null) { // 代表线程上没有绑定连接  
           
        conn = ds.getConnection();  
       }  
       return conn;
   } catch (Exception e) { 
       
   } 
return null;
}
}


三、TestDBQuery(测试函数)
package com.test;


import java.sql.ResultSet;


public class TestDBQuery {



public static void main(String[] args){

String sql_tmp = " select id from app_file limit 0,1";
try{
//分开定义合适 ,偷懒了
ResultSet rs = DBC3p0Manager.getConnection()
.prepareStatement(sql_tmp)
.executeQuery();

while(rs.next()){   

//String field_tmp = rs.getString("id") ;  
        String field_tmp = rs.getString(1) ; // 此方法比较高效   
        System.out.println("=="+field_tmp);
    }   

}catch(Exception e){

}

}

四、最后付上所需jar 和demo图片

jar包地址:

http://download.youkuaiyun.com/detail/dark_angle_mm/8807073

demo图片:

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值