数据库连接池技术的使用, 是为了避免频繁的创建连接, 销毁连接。
一、介绍
数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接, 而不是再重新建立一个。
没有使用数据库连接池的情况
:每次执行SQL语句,要先创建一个新的连接对象,然后执行SQL语句,SQL语句执行完,再关闭连接对象释放资源。这种重复的创建连接,销毁连接比较消耗资源。
使用数据库连接池的情况
:程序启动时,会在数据库连接池中创建一定数量的Connection对象,当客户请求数据库连接池,会从数据库连接池中获取Connection对象,然后执行SQL,SQL语句执行完,再把Connection归还给连接池。
优点:
- 减少了网络开销
- 资源重用
- 提升了系统的性能
二、使用
常见的数据库连接池:
C3P0、DBCP、Druid、Hikari,目前比较流行的是 Hikari, Druid
- Hikari : SpringBoot默认使用的数据库连接池
-
Druid
如果想把默认的数据库连接池切换为Druid数据库连接池, 只需要引入相关依赖即可。
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-3-starter</artifactId>
<version>1.2.21</version>
</dependency>
如果SpringBoot版本为2.X, 使用druid-spring-boot-starter 依赖。
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.17</version>
</dependency>
启动项目:
参考官方地址:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter