关于java:SpringBoot连接池HikariCP

7次阅读

共计 1023 个字符,预计需要花费 3 分钟才能阅读完成。

SpringBoot 整合连接池

1.1 概述

在理论开发的过程中, 应用程序与数据库交互,” 取得连贯 ” 和 ” 开释资源 ” 是十分耗费系统资源的两个过程, 为了解决此类性能问题, 通常状况下咱们采纳连接池技术来重用连贯 Connection 对象;

Java 为数据库连接池提供了公共的接口:javax.sql.DataSource; 都须要将本人的数据库实现这个接口. 而后咱们的应用程序中耦合于这个接口, 便能够切换不同的连接池, 常见的连接池有 DBCP,C3P0,DRUID,HikariCP 等!!!


通过连接池获取连贯的一个根本过程如下图:

在上图中. 用户会通过 DataSource(数据源)对象的 getConnection()办法, 获取一个连贯. 如果池中有连贯, 则间接将连贯返回给用户. 如果池中没有连贯. 则会调用 Dirver(驱动, 由数据库厂商进行实现)对象的 connet 办法从数据库获取. 拿到连贯后, 能够将连贯在池中放一份, 而后将连贯返回给调用方;

1.2 数据初始化

第一步: 登录 mysql
第二步: 设置客户端控制台的编码 (utf8)
第三步: 执行.sql 文件
备注:当 mysql 连贯数据库失败时,检测服务是否启动,可尝试先启动服务(windows 中须要以管理员关上控制台,而后在控制台执行 net start mysql 启动服务即可)

1.3 整合 HikariCP 连接池

HakariCP 号称是目前世界上最快的连接池, 有江湖一哥的名称. 目前在 SpringBoot 工程默认应用 HakariCP 连接池; 在 SpringBoot 工程中整合 HakariCP, 步骤如下:
第一步: 增加依赖
1. 在 pom.xml 中, 右键 Spring—>Edit Starters

2. 查找 Mysql 驱动依赖,JDBC API

第二步: 配置连接池
关上 applecation.properties 配置文件, 增加以下内容:
spring.datasource.url=jdbc:mysql:///dbgoods?serverTimezone=GMT%2B8&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root`

第三步: 单元测试

第四步: 原理剖析

在上图中, 演示了咱们在测试类 DataSourceTests 中基于 DataSource 获取连贯的一个根本过程. 能够再 Driver 接口实现中的 connet 办法增加断点, 而后进行断点测试

正文完
 0