c3p0介绍与使用

article/2025/9/27 16:14:43

       C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目HibernateSpring等。

下载

https://sourceforge.net/projects/c3p0/files/latest/download?source=files下载最新C3PO的二进制包。

②以c3p0-0.9.5.2.bin.zip为例,解压得到如下图的目录:


其中的doc为说明文档,examples是自带的例子,lib是一些jar包,src是源码jar包。

③将lib下的c3p0-0.9.5.2.jar和mchange-commons-java-0.2.11.jar导入eclipse中,并在工程的src下新建一个名为c3p0-config.xml,且内容为:

<?xml version="1.0" encoding="UTF-8"?>

<c3p0-config>

  <named-config name="mvcApp"> 

      <propertyname="user">root</property>

      <propertyname="password">123456</property>

      <propertyname="driverClass">com.mysql.jdbc.Driver</property>

      <propertyname="jdbcUrl">jdbc:mysql://localhost:3306/java</property>

<!—以上的user是数据库的用户,password是数据库的密码,driverClassmysql的数据库驱动,jdbcUrl是连接数据库的url -->

       <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数 -->

<propertyname="acquireIncrement">5</property>

<!--初始化时获取十个连接,取值应在minPoolSizemaxPoolSize之间 -->

<propertyname="initialPoolSize">10</property>

<!--连接池中保留的最小连接数 -->

<propertyname="minPoolSize">10</property>

<!--连接池中保留的最大连接数 -->

<propertyname="maxPoolSize">50</property>

<!--JDBC的标准参数,用以控制数据源内加载的PreparedStatements数量。但由于预缓存的statements属于单个connection而不是整个连接池。所以设置这个参数需要考虑到多方面的因素。如果maxStatementsmaxStatementsPerConnection均为0,则缓存被关闭。Default: 0-->

<propertyname="maxStatements">20</property> 

<!--maxStatementsPerConnection定义了连接池内单个连接所拥有的最大缓存statements数。Default: 0 -->

<propertyname="maxStatementsPerConnection">5</property>

  </named-config>

</c3p0-config>

④在工程中新建一个JdbcUtils的工具类,代码如下:

 

import java.sql.Connection;

import java.sql.SQLException;

import javax.sql.DataSource;

import com.mchange.v2.c3p0.ComboPooledDataSource;

 

public class JdbcUtils {

       /**

        * 释放连接

        * @param connection

        */

       public staticvoid releaseConnection(Connection connection){

              try {

                     if(connection != null ) {

                            connection.close();

                     }

              }catch (Exception e) {

                     e.printStackTrace();

              }

       }

       privatestatic DataSource dataSource = null;

       static{

              //dataSource资源只能初始化一次

              dataSource= new ComboPooledDataSource("mvcApp");

       }

       /**

        * 获取连接

        * @return

        * @throws SQLException

        */

       public staticConnection getConnection() throws SQLException{

              returndataSource.getConnection();

       }

}

其中的mvcAppc3p0-config.xmlnamed-configname值。DataSource的实例使用ComboPooledDataSource来生成的,这样我们就可以创建一个连接池,从而减少数据库连接时间。

最后,c3p0相似的dbcpproxool连接池,详见:

dbcp:http://baike.baidu.com/view/920072.htm

proxoolhttp://baike.baidu.com/view/2098784.htm


http://chatgpt.dhexx.cn/article/KSkcFXdi.shtml

相关文章

C3P0数据库连接池的使用及总结

- 为解决传统开发中的数据库连接问题&#xff0c;可以采用数据库连接池技术。 - 数据库连接池的基本思想&#xff1a;就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接&#xff0c;当需要建立数据库连接时&#xff0c;只需从“缓冲池”中取出一个&#x…

【 数据库连接池】C3P0

数据库连接池概述 在JDBC编程中&#xff0c;每次创建和断开Connection对象都会消耗一定的时间和IO资源。 这是因为在Java程序与数据库之间建立连接时&#xff0c;数据库端要验证用户名和密码并为该连接分配资源&#xff0c;而程序则要把代表连接Connection对象等加载到内存中&…

c3p0是什么

1.c3p0是什么&#xff1f; c3p0是一个库。它扩展了传统的jdbc数据库连接池&#xff0c;并且支持JDBC3规范和JDBC2的标准扩展。 2.为什么使用c3p0&#xff1f; 首先&#xff0c;c3p0是一种jdbc数据库连接池。那么为什么使用数据库连接池呢&#xff1f;因为数据库连接是一种关键…

Aspose.Slides for java 22.9最新版 官网最新

最新版支持转换种类和效率都有很大提升 aspose为ppt提供的操作转化工具 ppt转换成各种文档都可 版本已无水印 一句代码即可 简单有效 可配合测试 协助解决 代开发app与api等

swiper 轮播插件使用 一次显示多个slides

**项目中需要实现下图效果 ** demo 代码 拿来即用,引用的地址是 CDN 资源 <!DOCTYPE html> <html lang"en"><head><meta charset"utf-8"><title>Swiper demo</title><meta name"viewport" content&qu…

aspose-slides-22.5-jdk16

官网下载地址&#xff1a;Aspose Repository Browser /repo/com/aspose/aspose-slides/22.5/ 一、分析 1、官方验证部分为&#xff1a; InputStream is new FileInputStream("license.xml");License license new License();license.setLicense(is); 以下为一个过…

Aspose.Slides for .NET V23 Crack

Aspose.Slides for .NET V23 Crack 现在&#xff0c;您可以在将演示文稿保存为HTML时保留文档缩放。 Aspose.Slides for.NET是一个演示文稿处理API&#xff0c;使应用程序能够读取、写入、修改和转换Microsoft PowerPoint演示文稿。作为一个独立的API&#xff0c;它提供了管理P…

slides.com 导出PDF

对于在Slides上创建的演示文稿 https://slides.com/jijing/testing-microservice-ecosystems#/title 选择最下面一项&#xff0c;点击Downlaod a copy of 下载 下载解压后编辑&#xff0c;index.html 按提示替换 head&#xff0c;body, script 的内容&#xff0c;注意最后替…

ionic5中轮播图ion-slides、ion-slide的使用

这里写目录标题 参考文档准备新建页面图片准备 简单轮播图实现实现自动轮播的功能定义参数界面上使用该参数 自动轮播干扰时停止问题的解决定义名称#slide引入ViewChild获取slide对象实现点击结束自动轮播 实现点击按钮上下轮播图切换 参考文档 对于轮播图的实现&#xff0c;我…

Python-pptx Slides

image Slides对象 使用Presentation的slides属性可以访问Slides对象。 它不打算直接构造。class pptx.slide.Slides 属于Presentation实例的幻灯片序列&#xff0c;具有访问单个幻灯片的列表语义。 支持索引访问&#xff0c;len()和迭代。 add_slide(slide_layout ) 返回一个新…

ionic2 使用slides制作滑动效果的类型选择栏

类似的效果如下图&#xff1a; 1. 生成一个component ionic g component MySlide 2. 在my-slide.html中添加代码&#xff1a; <ion-slides class"slide-title" [options]"mySlideOptions"><ion-slide *ngFor"let slide of slides; let i in…

Slider简介

来小米实习快两个月了&#xff0c;分配的一个大任务就是调研Slider&#xff0c;下面我简单的描述下Apache下的孵化项目Slider吧 背景 YARN是HADOOP2中的通用资源管理平台&#xff0c;但是基于YARN开发应用&#xff0c;需要用户自己编写AM来处理资源申请、容错等&#xff0c;难度…

slides.js插件用法

一、下载地址&#xff1a;http://slidesjs.com css部分&#xff1a; html部分&#xff1a; js部分&#xff1a; 文章来自&#xff1a;源码在线https://shengli.me/javascript/56.html;

Google docs/slides的下载

参考&#xff1a;https://blog.csdn.net/mzpmzk/article/details/79318029 Google Drive/Docs/Presentation 的下载 1. 问题&#xff1a; 当我看到一个youtube视频下给的google slides时&#xff0c;想把这个ppt下载下来&#xff0c;但是没有下载的按钮&#xff0c;无法下…

Obsidian 插件(二):Advanced_Slides 的使用

文章目录 Advanced Slides 的使用一、 概述1、 简介2、 特征3、 第一个 PPT 二、 基础语法1、 水平垂直幻灯片2、 元素注释3、 幻灯片注释4、 块注解5、 元素动画6、 内联样式7、 幻灯片背景样式8、 演讲者模式9、 列表动画10、 画图支持11、 图标12、 表情包13、 图表支持14、…

Slides - 在线制作效果精美的幻灯片(PPT)

Slides 是可以在浏览器中使用的在线幻灯片编辑器。与传统的演示软件&#xff0c;比如 PowerPoint 相比&#xff0c;Slides 不需要下载任何东西。你所有的信息都是安全地存储在我们的服务器上&#xff0c;无论你在哪里。不管你说的是在一次会议上演讲或者只是通过电子邮件发送你…

使用Latex制作分享,演讲,Presentation用的Slides,PPT——Beamer教程

1、什么是Beamer 什么是Slides&#xff1f; Slides指的是幻灯片&#xff0c;常见的包括Microsoft 的PPT&#xff0c; macOS的Keynote&#xff0c;Google的Google Slides等。 什么是Beamer&#xff1f; Beamer 是一个用于创建演示文稿 LaTeX 的文档类。作为LaTeX的一个文档类…

jQuery幻灯片插件Slides

Slides – 是一个简单的&#xff0c;容易定制和风格化&#xff0c;的jQuery幻灯片插件。 Slides提供褪色或幻灯片过渡效果&#xff0c;图像淡入淡出&#xff0c;图像预压&#xff0c;自动生成分页&#xff0c;循环&#xff0c;自动播放的自定义等很多选项。 用Slides插件&#…

win10下安装doxygen

作为一只小菜鸟&#xff0c;总是从看大神代码起步的&#xff0c;这时候必要的注释真的是太重要了&#xff01;最近查ffmpeg一些官方库时它们都有用到doxygen来生成项目文档&#xff0c;这里特此记录下win10平台下安装doxygen的步骤&#xff0c;勉励自己多多加油&#xff01; 资…

【Doxygen使用教程】

文章目录 1 软件安装2 Doxygen 注释规范2.1 注释格式2.2 自动注释模板&#xff08;VSCode settings.json 配置&#xff09;2.3 手动注释模板2.3.1 文件注释模板2.3.2 函数注释模板 3 使用教程3.1 Doxygen Wizard Project3.2 Doxygen Wizard Mode3.3 Doxygen Wizard Output3.4 D…