![一步一步学Spring Boot:微服务项目实战(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/111/29977111/b_29977111.jpg)
2.5.2 HikariCP的使用
如果我们使用的是Spring Boot2.0或者之后的版本,不需要单独在pom.xml文件中引入HikariCP依赖,因为默认情况下spring-boot-starter-jdbc或者spring-boot-starter-data-jpa会依赖进来。
对于Hikari连接池的配置,可通过使用spring.datasource.type并在application.properties文件中为其分配连接池实现的完全限定名称来启用它,如下所示:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P44_799.jpg?sign=1734468458-vnkUgHxcjACLDSlNXlPQ8lGCOQMb0bQc-0-ac952d1df8f97d4ea94af7d0f4045e27)
如果使用的是Spring Boot2.0及以上版本,Spring Boot会使用HikariDataSource作为默认选择,不需要配置上面的行。
要配置Hikari特定的连接池设置,Spring Boot提供了spring.datasource.hikari.*在application.properties文件中使用的前缀。我们将在这里讨论一些常用的配置。
(1)connectionTimeout
connectionTimeout是客户端等待连接池连接的最大毫秒数,需要将其配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P44_5825.jpg?sign=1734468458-Sfdg0fCb5kEJa4MSxp13SYuHEjTV3Yk6-0-ce4192fd4a5fd68c83d333691328f457)
(2)minimumIdle
minimumIdle是HikariCP在连接池中维护的最小空闲连接数,它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P44_802.jpg?sign=1734468458-viLWJE3Iw1ds0Uv1eQdmXigjCZCtGizf-0-44ec5c40d61c76e594050e4cfe0d9c16)
(3)maximumPoolSize
maximumPoolSize配置最大池大小,它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5826.jpg?sign=1734468458-UauGJN1xABBoVL3KSXrC8hNobErdxBC0-0-4dbed08f66c447edbb2fcbbed9f30fab)
(4)idleTimeout
idleTimeout是允许连接在连接池中空闲的最长时间(以毫秒为单位),它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5827.jpg?sign=1734468458-zjS7EVah6wlha2ywVfg1oMwaq8SIwkZs-0-9da12e383ae4d8010a43f6a072fecd4a)
(5)maxLifetime
maxLifetime是池中连接关闭后的最长生命周期(以毫秒为单位),它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5828.jpg?sign=1734468458-hFDnYIJtP2anogAj7vLRqfDiZ43xO4Zh-0-dcb3ad66c8213ae751ff01d8c6730e90)
(6)autoCommit
autoCommit配置从池中返回的连接的默认自动提交行为,默认值为true:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5829.jpg?sign=1734468458-REVjc9TKQeyfog0J6SuB9gnCVBJJQb18-0-1062b2c0f4d1b4e72143009593f9c0ee)
完整的配置示例如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5830.jpg?sign=1734468458-dhU0SM3zHFiVszaGNEBLbUVKpPpewuwM-0-7f3c9a91a7f2cb77617708e473788ad1)
本节只是简单地介绍了HikariCP的基础知识,其具体使用与Druid连接池类似。