558数据库连接池_概述559数据库连接池_实现介绍

数据库连接池——概述

(1)概念:其实就是一个容器(集合),存放数据库连接的容器

当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象归还给容器。
(2)好处:

  1. 节约资源
  2. 用户访问高效

数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,

只需从“缓冲池”中取出一个,使用完毕之后再放回去。

数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是重新建立一个。

数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数来设定的。无论这些数据

库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,

当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。

数据库连接池 _ 实现介绍

(3)实现:

  1. 标准接口:DataSource  java.sql 包下的
    1. 方法
      1. * 获取连接: getconnection()
      2. 归还连接:connection.close()。如果连接对象 Connection 是从连接池中获取的,那么调用 Connection.close() 方法,则不会再关闭连接了。而是归还连接
  2. 一般我们不去实现它
    1. C3PO∶数据库连接池技术
    2. Druid : 数据库连接池实现技术,由阿里巴巴提供的