Springboot MyBatis 数据库连接池

一、数据库连接池

1)、 没有数据库连接池的情况

2)、 有数据库连接池的情况

数据库连接池:它是个容器,负责分配、管理数据库连接(Connection)

数据库连接池的好处:

  • 资源重用

  • 提升系统响应速度

  • 避免数据库连接遗漏

标准接口:javax.sql.DataSource接口

  1. 官方(sun)提供了数据库连接池标准,有第三方组织实现接口。
  2. 获取连接:public Connection getConnection() throws SQLException;

常见的数据库连接池:

1). Hikari(追光者) [默认的连接池]

springboot底层默认使用的数据库连接池就是 Hikari。

2). Druid(德鲁伊)

  • Druid连接池是阿里巴巴开源的数据库连接池项目

  • 功能强大,性能优秀,是Java语言最好的数据库连接池之一

官方地址:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

①. 在pom.xml文件中引入依赖

XML 复制代码
        <!-- Druid连接池依赖 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.20</version>
        </dependency>

②. 在application.properties中引入数据库连接配置

XML 复制代码
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

spring.datasource.url=jdbc:mysql://localhost:3306/schoolsystem
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=*****

运行,查看控制台输出的日志中,将连接池切换为了 Druid连接池。

再次查看源码:所有的必须继承DataSource接口

相关推荐
lzhdim1 小时前
SQL 入门 15:SQL 事务:从 ACID 到四种常见的并发问题
数据库·sql
瀚高PG实验室1 小时前
瀚高企业版V9.1.1在pg_restore还原备份文件时提示extract函数语法问题
数据库·瀚高数据库
TDengine (老段)1 小时前
TDengine Tag 设计哲学与 Schema 变更机制
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
YOU OU2 小时前
Spring IoC&DI
java·数据库·spring
Muscleheng3 小时前
Navicat连接postgresql时出现‘datlastsysoid does not exist‘报错
数据库·postgresql
罗超驿4 小时前
18.事务的隔离性和隔离级别:MySQL面试高频考点全解析
数据库·mysql·面试
jran-4 小时前
Redis 命令
数据库·redis·缓存
小江的记录本5 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven
June`5 小时前
多线程redis下如何解决aof重写和rdb持久化的数据一致性问题
数据库·redis·缓存
二宝哥5 小时前
离线安装maven
java·数据库·maven