数据库连接池的工作机制

今天脑子一抽想到一个问题,就是当连接池中没有空闲连接的时候会新建一定数量的池连接,然后忽然想到如果这时有连接关闭的话是会返回到连接池还是会消失?

紧接着去百度了一下,我去,瞬间感觉自己low比了,空闲下来的连接肯定会返回连接池啊,当然连接池中的池连接也不是无限制的,会有一个上线(一般是自己设置),到达这个上线之后,再想获取池连接的话就只能等待了。

一般来说,J2EE服务器在启动的时候会创建一定数量的池连接,并且一直维持不少于这个数目的池连接。

当客户端程序需要的时候,驱动程序会返回一个没有使用的池连接,并将返回的池连接标记为忙。

如果客户端需要连接,但是当前没有空闲连接,池驱动程序就会创建一定数量的连接,新建连接的数量由配置参数决定。

当使用的池连接调用完成后,池驱动程序将此链接标记为空闲,其他大的调用就可以使用这个连接了。

实现方式,返回的connection是原始的connection的代理,代理connection的close方法不是真正关闭连接,而是把它的代理的connection对象返回到连接池中。

转载于:https://www.cnblogs.com/blog4wei/p/7418639.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值