C3P0数据库连接池使用

 

C3P0数据库连接池使用

1、拷贝jar包:c3p0-0.9.1.2.jar     c3p0-0.9.1.2-jdk1.3.jar    c3p0-oracle-thin-extras-0.9.1.2.jar(oracle需要)

2、书写配制文件放在src目录下:c3p0-config.xml(名字只能是这个)

3、类C3P0Util

c3p0-config.xml 内容:

 

<?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
	<!-- This is default config! -->
	<default-config>
		<property name="initialPoolSize">10</property>
		<property name="maxIdleTime">30</property>
		<property name="maxPoolSize">100</property>
		<property name="minPoolSize">10</property>
		<property name="maxStatements">200</property>
	</default-config>

	<!-- This is my config for mysql-->
	<named-config name="mysql">
		<property name="driverClass">com.mysql.jdbc.Driver</property>
		<property name="jdbcUrl">jdbc:mysql://localhost:3306/test</property>
		<property name="user">root</property>
		<property name="password"></property>
		<property name="initialPoolSize">10</property>
		<property name="maxIdleTime">30</property>
		<property name="maxPoolSize">100</property>
		<property name="minPoolSize">10</property>
		<property name="maxStatements">200</property>
	</named-config>
	
	
	<!-- This is my config for oracle -->
	<named-config name="oracle">
		<property name="driverClass">oracle.jdbc.driver.OracleDriver</property>
		<property name="jdbcUrl">jdbc:oracle:thin:@localhost:1521:orcl</property>
		<property name="user">scott</property>
		<property name="password">liang</property>
		<property name="initialPoolSize">10</property>
		<property name="maxIdleTime">30</property>
		<property name="maxPoolSize">100</property>
		<property name="minPoolSize">10</property>
		<property name="maxStatements">200</property>
	</named-config>
</c3p0-config>

 

package com.liang.util;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;

import com.mchange.v2.c3p0.ComboPooledDataSource;
/**
 * 数据库工具类
 * @author liang
 *
 */
public class C3P0Util {
	static ComboPooledDataSource cpds=null;
	static{
		//这里有个优点,写好配置文件,想换数据库,简单
		//cpds = new ComboPooledDataSource("oracle");//这是oracle数据库
		cpds = new ComboPooledDataSource("mysql");//这是mysql数据库
	}
	/**
	 * 获得数据库连接
	 * @return   Connection
	 */
	public static Connection getConnection(){
		try {
			return cpds.getConnection();
		} catch (SQLException e) {
			e.printStackTrace();
			return null;
		}
	}
	
	/**
	 * 数据库关闭操作
	 * @param conn  
	 * @param st    
	 * @param pst
	 * @param rs
	 */
	public static void close(Connection conn,PreparedStatement pst,ResultSet rs){
		if(rs!=null){
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
		if(pst!=null){
			try {
				pst.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}

		if(conn!=null){
			try {
				conn.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}
	/**
	 * 测试DBUtil类
	 * @param args
	 */
	public static void main(String[] args) {
		Connection conn=getConnection();
		System.out.println(conn.getClass().getName());
		close(conn,null,null);
	}
}

 

 

JDBC: C3P0数据库连接池连接MySQL数据库 JDBC: C3P0数据库连接池连接MySQL数据库 数据库连接池介绍 数据库连接池负责分配、管理和释放数据库连接,它相当于一个容器(集合),存放数据库连接。当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数... 阅读详情

相关推荐

Java之JDBC中数据库C3P0连接池的使用

C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。 C3P0连接池的使用演示 建库、建表sql脚本 #创建数据库 CREATE DATABASE IF NOT EXISTS jdbc_test; #选中刚刚创建的数据库 use jdbc_test; #创建users表 CREATE ...

hestyle的博客 1189

C3p0数据库连接池的使用(转)

摘自:https://www.cnblogs.com/biehongli/p/6534694.html 1:首先介绍c3p0的一般使用用法,这种用法练习使用,当然工作的时候使用第二种xml配置完成c3p0的使用。 c3p0的网址:http://www.mchange.com/projects/c3p0/   1.1:第一种方式使用c3p0:     使用编码方式实现c3p0数据库连接池,练...

无心人的终点 1120

c3p0连接池jar包及jdbc驱动 jar包

c3p0是一款常用的开源数据库连接池,附件是c3p0-0.9.5.2.jar包和配套使用的mchange-commons.jar包及jdbc驱动jar包,欢迎下载~

C3P0连接池的实现-多种方式

用到的jar包:                  mysql-connector-java-5.1.30-bin.jar                  c3p0-0.9.5.2.jar                  mchange-commons-java-0.2.11.jar 直接设置参数: C3P0Inner.java 

huiwen0918的博客 484

安卓端目标检测模型部署血泪史:从NCNN/TFLite/MNN全军覆没到Torchscipts终见光明

公司需在Android设备部署目标检测模型,要求: ✅ 实时检测速度≥15FPS ✅ 模型精度损失<5% ✅ 兼容中低端安卓设备👉 GitHub项目地址:pytorch/android-demo-app/ObjectDetection我已上传这份源码到csdn下载准备模型(必须走这步才能跑通安卓端源码)如果您没有设置PyTorch环境来运行该脚本,可以下载模型文件此处转到“android演示app/ObjectDetection/app/src/main/assets”文件夹,然后跳过此步骤的其余部分,直

机器学习、深度学习、强化学习、迁移学习 1567

SAP开发实战:用FI_DOCUMENT_CHANGE BAPI批量修改FB03凭证抬头和行项目文本(附完整ABAP代码)

本文详细介绍了如何使用SAP的FI_DOCUMENT_CHANGE BAPI批量修改FB03凭证抬头和行项目文本,提供完整的ABAP代码实现方案。通过该BAPI,开发者可以高效完成财务凭证的批量修改,确保数据一致性和审计合规性,显著提升SAP财务模块的运维效率。

weixin_29224589的博客 380

c3p0

C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。 例: 代码: 工具类: package c3p0b01;import com.mchange.v2.c3p0.ComboPooledDataSource;import java.beans.PropertyVeto...

weixin_30262255的博客 385

【2026-Spark实验一-Windows中安装Spark环境】

本文详细介绍了在Windows系统中配置Spark 3.5.8开发环境的完整流程。主要内容包括:安装JDK 8并配置环境变量,下载并解压Spark 3.5.8预编译版,设置SPARK_HOME系统变量,配置Hadoop的winutils工具解决Windows兼容性问题。通过spark-shell和SparkPi示例程序验证环境配置成功,确保Spark能够正常运行分布式计算任务。文中特别强调了路径命名规范、环境变量设置顺序等关键细节,提供了完整的配置截图和验证方法,帮助开发者快速搭建稳定的Spark学习环境。

pblh123的专栏 1586

C3P0(数据库连接池)详解

C3P0是一个开源的JDBC连接池

five小点心的博客 1万+

迷茫之后:Java研发转型售前——选择大于努力!

写下这段文字的时候,小弟已经从Java开发岗位转型软件售前近20天了........ 2011年9月毕业于某培训机构,学的是java语言。之后来到深圳,进入华为外包开始了我的程序猿生涯....刚入职场,第一份工作总是兴奋情绪占主导地位,加入文思创新在华为的人力外包项目组,然后跟着老员工学习、修复小bug,一步一坑的去熟悉那老掉牙的框架...ejb+struts1.2.........项目组老

xuweiwei0415的专栏 1万+

别再手动调参数了!用3ds Max的tyDiffusion插件,5分钟搞定AI动态纹理生成

本文介绍了3ds Max的tyDiffusion插件如何通过AI技术快速生成动态纹理,大幅提升3D美术师的工作效率。从火焰、水流到布料飘动,tyDiffusion能在5分钟内完成传统手工需要数小时的任务,且效果更自然。文章详细解析了插件的核心功能、实战配置及进阶应用,帮助用户轻松实现AI动态纹理生成。

weixin_30919429的博客 667

Spring 使用C3P0数据库连接池

在所有的实际工作之中,之前使用的"DriverManagerDataSource"类是不会被使用的,因为这种的数据源的处理操作使用的是传统的JDBC方式处理,也就是所它每次操作的时候都需要自己连接数据库,而后还需要关闭数据库,性能太差了,所以在实际的工作上我们都会使用数据库连接池来负责数据库连接的管理,但是在JSP的时候学习过Tomcat下配置连接池,只不过这种连接池有一个问题,它必须有Tomca...

抛弃幻想,准备斗争 494

ESP8266 + MQTT :如何实现 LED 灯的远程控制

MQTT 是轻量级的、灵活的物联网消息交换和数据传递协议,致力于为 IoT 开发人员实现灵活性与硬件/网络资源的平衡。 NodeMCU 是一个开源的物联网平台。它使用 Lua 语言编程。该平台基于eLua开源项目,底层使用ESP8266 sdk 0.9.5版本。 在此项目中我们将实现 NodeMCU(ESP8266) 与 EMQ X Cloud 运营和维护的免费公共 MQTT 服务器远程控制 LED 灯,并使用 Arduino IDE 来对 NodeMCU ESP8266 进行编程。 EMQ X Cloud

emqx_broker的博客 3357

数据库连接池的作用及c3p0的详解

1.JDBC数据库连接池的必要性 在使用开发基于数据库的web程序时,传统的模式基本是按以下步骤:   在主程序(如servlet、beans)中建立数据库连接。 进行sql操作 断开数据库连接。 这种模式开发,存在的问题: 普通的JDBC数据库连接使用 DriverManager 来获取,每次向数据库建立连接的时候都要将 Connection 加载到内存中,再

阶段丶成长的博客 2万+

USB2.0协议解读

就写到这吧,其他协议层等属于软件需要了解的东西了。简单看了下,本文总结的有点乱,有两个原因吧,其一是理解的不够透彻,无法用简单明了的语言总结;其二是感觉这个协议文档章节划分的也不是很好,有点大杂烩。

qflook的博客 3673

手把手教你学PCIE--固件与BIOS配置 - BIOS设置对PCIe性能的影响

本文详细分析了BIOS设置对PCIe性能的影响,并提供了优化建议。通过合理调整链路参数、功耗管理策略和高级功能配置,可以显著提升系统的性能和稳定性。本文将进一步分析BIOS设置如何影响PCIe设备的性能,并提供优化建议。BIOS(或UEFI)是系统启动时的第一个控制层,其设置直接决定了PCIe设备的工作状态和性能表现。BIOS中的功耗管理选项(如C-States、P-States)会影响PCIe链路的低功耗模式(L0s/L1)。MSI/MSI-X中断具有更高的性能和更好的可扩展性,应作为首选方案。

MHD0815的博客 994

c3p0数据库连接池的使用

据说c3p0数据库连接池是最优秀的,当然这也是我道听途说的,没有实际证实过。今天我抽空写了一个c3p0的例子,借此也总结一下。 一、jar包 老规矩,引用开源项目,自然要先下载人家的jar包,我这里有一个在云盘:c3p0-0.9.5-pre4.jar,这里面其实有三个包,是我在开源中国下载的最新的,如果你还想要更新的不妨自己到网上去搜一下。 二、配置文件 作为一个数据库连接池自然有

wushangjimo的专栏 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

c3p0数据库连接池实例

c3p0下载地址:http://download.youkuaiyun.com/detail/huhui_bj/6944595 这篇文章介绍的是,在普通Java Web工程中或者普通Java工程中使用c3p0数据库连接池的实例,c3p0的jar文件包括3个。下面这个实例工程中,主要包括三个重要的文件: C3P0ConnentionProvider.java       初始化c3p0数据库连接池 S

Huhui's Blog 4499

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

使用C3P0连接池连接数据库

C3P0工具类,XML文件中写关于数据库的一些配置信息 package com.itheima.utils; import com.mchange.v2.c3p0.ComboPooledDataSource; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import ...

小白学编程 3万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

javaweb数据库连接池如何实现C3P0

在较为完备的数据库连接池实现中,可根据预先的连占用超时设定,强制收回被占用连接。一个最小化的数据库连接池实现 没使用连接池时:在访问数据库的时候,要创建数据库连接,使用完成后还要进行销毁;对于业务请求处理而言,直接利用现有可用连接,避免了数据库连接初始化和释放过程的时间开销,从而缩减了系统 整体响应时间。启动的时候,会事先创建指定数量的连接,当请求访问数据的时候,可直接从连接池中获取连接。的连接池正是采用该连接池来实现的。对于多应用共享同一数据库的系统而言,可在应用层通过数据库连接的配置,实现数。

NLxxxxX的博客 1157

C3P0数据库连接池

C3P0 是一个开源的JDBC连接池,目前spring 和 hibernate框架对C3P0是支持的。使用c3p0数据库连接池之前,首先需要在资料中找到如下的jar包,加载到项目1.无参构造,使用默认配置2.有参构造,使用命名配置无参构造使用默认配置(使用xml中default-config标签中对应的参数)有参构造使用命名配置(configName:xml中配置的名称,使用xml中named-config标签中对应的参数)从连接池中取出一个连接C3P0配置文件名称必须为。

Java小白的博客 致力分享每一天学到的知识 1687

C3P0数据库连接池技术详解及实战

在现代Java开发中,数据库访问是至关重要的一环。传统的JDBC连接方式由于频繁创建和销毁数据库连接,导致性能低下,资源占用过多。为了解决这一问题,数据库连接池(Connection Pool)技术应运而生。 C3P0 作为 Java 领域中一款优秀的数据库连接池框架,提供了高效的连接管理,广泛应用于企业级项目中。本文将深入探讨 C3P0 的技术原理、配置方式,并结合代码示例进行实战演示。

keshi12354的博客 1206

Mysql数据库连接池之C3p0的使用

数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。 当应用程序启动时,系统主动建立足够的数据库连接,并将这些连接组成一个连接池。每当应用程序请求数据库连接时,无需重新打开连接,而是从池中去已有的连接使用,使用完后,不再关闭数据库连接,而是直接将连接归还给连接池。通过使用连接池,将大大提高程序运行效率。 1....

qq_42922647的博客 1163

数据库连接池技术(DCBP,C3P0)

一、序言数据库连接池(Database Connection Pooling)是一种优化数据库连接管理的技术,通过预先创建并维护一定数量的数据库连接,减少频繁创建和销毁连接的开销,提升系统性能和资源利用率。二、数据库连接池种类:Apache提供的数据库连接池,速度相对较快,但存在一些BUG。:开源组织提供的数据库连接池,速度较慢但稳定。:号称“史上最快连接池”,在springboot2.0之后成为默认数据库连接池。:阿里云提供的数据库连接池,集DCBP,C3P0,HikariCP优点于一身。

2301_81489303的博客 1460
上一篇: JavaWeb之网上书城案例
下一篇: JavaWeb之网上书城案例低保真
「已注销」
博客等级 码龄12年 7粉丝 282原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值