《JDBC连接技术》"江南月"(二)常用的连接池dbcp、c3p0、druid

本文介绍了数据库连接池的重要性,重点讲解了三种常用的Java数据库连接池技术——DBCP、C3P0和Druid。DBCP作为Apache的连接池组件,通常与tomcat一起使用;C3P0提供XML配置方式;Druid则是阿里巴巴开发的高性能监控型连接池。文中给出了各连接池的基本配置和工具类封装示例。
摘要由CSDN通过智能技术生成

我们应该知道,在进行数据库连接的时候,是极其消耗时间和性能的。如果每次对数据库进行操作,都要进行一次Connection,那么,可想而知,性能有多么的差。你要知道,一个大型的web应用,同一时间就可能有成千上万个访问数据库的请求,并且数据库服务器能供同时创建的Connection数目也是有限的。

因此,问题来了。怎么最大限度的利用这些有限资源呢?

数据库连接池的技术出现,解决了这一问题。连接池技术就是预先创建多个连接对象,保存到连接池中,当有客户请求时,从池中取出一个连接对象为客户服务,当请求完成后,客户程序调用close方法,将连接对象归还给连接池,已备其他客户使用,而不是真正的断开连接。这样就避免了每次请求都创建连接对象所带来的性能开销。

我这里简单的介绍一下常用的连接池技术:DBCP,C3P0,还有阿里的Druid。

1.DBCP

DBCP(DataBase connection pool)数据库连接池。是 Apache 上的一个 Java 连接池项目,也是 tomcat 使用的连接池组件。单独使用DBCP需要2个包commons-dbcp.jarcommons-pool.jar。由于建立数据库连接是一种非常耗时、耗资源的行为,所以通过连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,使用完毕后再归还到连接池中。数据库连接的释放和断开,由程序自动管理,大大方便了开发人员。

我使用的是dbcp2.0版本以上的jar包,如下:

不管使用哪种连接池技术,原理都是一样的,而常用的配置都是一样的,顶多配置参数的名称不同而已。下面介绍一下dbcp2.0版本以上的常用的配置参数(配置信息是写在src下的db.properties中的形式

#要连接的数据库的driverClassName
driverClassName=com.mysql.jdbc.Driver
#要传递给JDBC驱动程序以建立连接的连接URL。
url=jdbc:mysql://localhost:3306/db_test
#要传递给JDBC驱动程序以建立连接的连接用户。
username=root
#要传递给JDBC驱动程序以建立连接的连接密码。
password=mmforu
#同时从这个池中分配的活动连接的最大数量,或者为负,没有限制。dbcp1
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值