java mysql创建数据库连接池_javaweb数据库连接池简介入门

一、应用场景

web应用中,用户每次请求都需要向数据库获得链接,而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长。假设网站一天10万访问量,数据库服务器就需要创建10万次连接,极大的浪费数据库的资源,并且极易造成数据库服务器内存溢出、拓机。所以这里使用数据库连接池来避免这种问题。

简单的理解其原理:

1、连接池里面已经有了很多和数据库的连接,用户访问的时候,直接在池子中拿连接就好了,服务器就不需要创建连接了

2、内部维护一个list,当用户调用conn.close()的时候,这个conn对象是不被销毁,而是放入到list中的,为了达到这种效果,我们

需要自定义一个连接池(数据源)。

在这个数据源中,getConnection就是从list中拿到一个连接close就是将连接放回list中

二、编写数据库连接池

DataSourcesun定义的标准的数据源

编写连接池需实现javax.sql.DataSource接口。DataSource接口中定义了两个重载的getConnection方法:

ConnectiongetConnection()

ConnectiongetConnection(Stringusername,Stringpassword)

实现DataSource接口,并实现连接池功能的步骤:

1、在DataSource构造函数中批量创建与数据库的连接,并把创建的连接加入LinkedList对象中。

2、实现getConnection方法,让getConnection方法每次调用时,从LinkedList中取一个Connectio

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值