我正在使用springboot(v2.3.0.release)、jpa和hibernate(带有mysql数据库)。总的来说,我需要努力提高表现。
在默认配置中,我不完全清楚是否已经存在数据库连接池。
我没有在pom中添加任何关于连接池的特定依赖项,但当我尝试运行我的服务时,我读到:
2021-07-01 13:53:04.065 INFO HikariDataSource-getConnection():110 - [ HikariPool-1 - Starting... ]
2021-07-01 13:53:04.499 INFO HikariDataSource-getConnection():123 - [ HikariPool-1 - Start completed. ]
你能给我一些关于这个的信息吗?
我是否需要手动配置(同时添加依赖项)连接池?
2条答案
按热度按时间dldeef671#
hikari是spring boot 2的默认数据源实现。这意味着我们不需要在pom.xml中添加显式依赖项。默认情况下,spring boot starter jdbc和spring boot starter数据jpa会解析它。总之,SpringBoot2不需要其他步骤。
文档链接:连接池的spring文档
尽管您修改了hikaricp的默认属性
ddarikpa2#
根据spring引导文档:
支持的连接池:-
spring boot使用以下算法来选择特定的实现:
我们更喜欢hikaricp,因为它的性能和并发性。如果hikaricp可用,我们总是选择它。
否则,如果tomcat池数据源可用,我们将使用它。
否则,如果commons dbcp2可用,我们将使用它。
如果hikaricp、tomcat和dbcp2都不可用,并且如果oracle ucp可用,我们将使用它。
如果使用spring boot starter jdbc或spring boot starter数据jpa“starters”,则会自动获得对hikaricp的依赖关系。
spring文档
查看hikaricp:https://github.com/brettwooldridge/hikaricp