![一步一步学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=1739591010-cCw8FEfccMvkdxkqKMqUuiLrfcLq5DtN-0-1e87a596c76510f47ecd18cc3d1e383d)
如果使用的是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=1739591010-hhpCgQErz3MivyO90ioKvm5vksGO87iE-0-0067e46415da28b31a55e0be5b929251)
(2)minimumIdle
minimumIdle是HikariCP在连接池中维护的最小空闲连接数,它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P44_802.jpg?sign=1739591010-IOh2AyEVZbkZWuRhdaALL77Fs4YkWMkH-0-6c2822d4ddf02baed4b31dc6c46802ab)
(3)maximumPoolSize
maximumPoolSize配置最大池大小,它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5826.jpg?sign=1739591010-ompv9TDdhHNeH20fYDfK8rNBTSpS1Q65-0-ae85967954e10f1260aa2758088b8275)
(4)idleTimeout
idleTimeout是允许连接在连接池中空闲的最长时间(以毫秒为单位),它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5827.jpg?sign=1739591010-iAUtHnfC7P1wfEpSpPkn8VIcFugoN1vz-0-675f511fefb0ce055a2220eddb3abe6c)
(5)maxLifetime
maxLifetime是池中连接关闭后的最长生命周期(以毫秒为单位),它配置如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5828.jpg?sign=1739591010-muwIo8shileg11KcgGXMQSfBN7lAGZwS-0-fd9f7f63b75ead03e54f59cb6efc0fce)
(6)autoCommit
autoCommit配置从池中返回的连接的默认自动提交行为,默认值为true:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5829.jpg?sign=1739591010-JOJDrtIbcBOvuDb75RcGnixrNflJYQJv-0-d83814d9d1bb0fc03ac786716a5cc2d1)
完整的配置示例如下:
![](https://epubservercos.yuewen.com/AC53AA/16499866405996906/epubprivate/OEBPS/Images/Figure-P45_5830.jpg?sign=1739591010-hz13iBNTeMMjEYP5GBQskzDTVqOspaYg-0-6bacb9500a50d974727cc8aa794532c2)
本节只是简单地介绍了HikariCP的基础知识,其具体使用与Druid连接池类似。