数据库连接池学习

Java中常见的数据连接池

在Java中开源的数据库连接池有以下几种 :

  1. C3P0:是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和jdbc2扩展规范说明的Connection 和Statement 池的DataSources 对象。
  2. Druid:Druid不仅是一个数据库连接池,还包含一个ProxyDriver、一系列内置的JDBC组件库、一个SQL Parser。支持所有JDBC兼容的数据库,包括Oracle、MySql、Derby、Postgresql、SQL Server、H2等。
  3. Proxool:是一个Java SQL Driver驱动程序,提供了对选择的其它类型的驱动程序的连接池封装。可以非常简单的移植到现存的代码中,完全可配置,快速、成熟、健壮。可以透明地为现存的JDBC驱动程序增加连接池功能。
  4. DBCP:DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池,DBCP可以直接的在应用程序中使用,Tomcat的数据源使用的就是DBCP。

我们在使用连接池时,连接池给我们提供了获取数据库连接的方法,但使用完成后还是要调用 close 方法来关闭连接。但是实际上使用连接池时调用 close() 方法实际上并没有关闭连接,只是将该连接归还给连接池。

2.1、基于maven项目使用C3P0

首先添加依赖:

<dependency>

<groupId>mysql</groupId>

<artifactId>mysql-connector-java</artifactId>

<version>5.1.12</version>

</dependency>

<dependency>

<groupId>com.mchange</groupId>

<artifactId>c3p0</artifactId>

<version>0.9.5.2</version>

</dependency>

因为使用的是 mysql,所以我们要添加 mysql 的驱动包依赖。

如果新建的 maven 项目是 java SE 的项目,我们需要手动建一个 resource 包,并且标记为 resource folder,因为我们需要将 cp30 的配置文件放在该包下。

新建 cp30 的配置文件 c3p0-config.xml,并将该配置文件放在 resource 包下。只有放在 resource 包下,编译过后你才会发现 cp30 的配置文件生成在 target 的classes 文件夹下。

在配置文件中可以配置多个连接池,default-config 是默认的连接池配置,可以通过 name-config 标签来配置其他的连接池配置,通过 name 属性为该配置指定名称。在使用额外的连接池配置时,最终的配置信息是默认配置和该额外的配置的并集,并且以额外的配置优先。

在获取连接池对象时,如果不传参则使用的是默认配置,也可以通过使用 name 参数来使用指定配置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值