数据库连接池
1数据库连接池的概念:
数据库连接池负责分配,管理和释放数据库连接。在其中引用程序可以重复使用一个数据库连接。可以通过释放空闲时间超过定义的最大空闲时间来避免资源的无端消耗。
在实际开发中"获取连接"和"释放连接"最为消耗系统资源。
所以才产生了管理"Connection对象"的数据库连接池,
其主要负责"分配",“管理”,"释放"Connection对象。
2数据库连接池的原理:
<1>连接池就是在系统初始化的时候将数据库连接作为对象存储到内存中,当需要访问数据库中的内容时,直接从连接池中取出空闲的数据库连接,在访问结束时也无序关闭数据库连接。由连接池来统一对数据库连接进行分配管理和释放。并且还可以通过数据库连接池的参数来空值连接池的初始连接数,连接的上下限数,每个连接重复使用的次数还有最大空闲时间等。
<2>数据库连接池的最大连接数和最小连接数对数据库连接池有较大的影响
<1.最小连接数 就是当其初始化时,数据库连接池获取的连接数。
<2.最大连接数:连接池中能申请的最大连接数
<3.大小连接数的差距:最小连接数与最大连接数相差太大,那么最先的连接请求将会获利,之后超过最小连接数量的连接请求等 价于建立一个新的数据库连接。
3 常用的数据连接池
DBCP2 C3P0 Druid Hikaricp
<1>通过DButils和Druid来管理及访问数据库
<1.首先配置properties文件
<2.封装一个从连接池中获取连接的帮助类
<3.在创建maven文件时还必须
- List item
将数据库连接到java ,数据库连接池, DButils数据库工具 ,以及maven的jar包通通在配置文件pom.xml文件中配置好
<4. 再使用DButils数据库工具中的 QueryRunner类中提供的方法:int update(sql,sql中的?)方法和
query(sql,ResultHandler集合,sql中的问号)方法分别对数据库进行修改和查询的操作