Java 21 Hikari Connection Pool
⚡ Configuring a Hikari Connection Pool with Spring Boot (⭐Hikari)
✅ Configuring a Hikari Connection Pool com Spring Boot ⭐Hikari é uma implementação do JDBC DataSource que fornece um mecanismo de pool de conexões. Comparado a outras implementações, ele promete ser leve e com melhor desempenho.
O HikariCP já é o connection pool padrão do Spring Boot. Então, na maioria dos casos, basta configurar as propriedades no application.properties ou application.yml.
✅ 1. Configuração Básica (application.properties)
spring.datasource.url=jdbc:postgresql://localhost:5432/meubanco
spring.datasource.username=usuario
spring.datasource.password=senha
spring.datasource.driver-class-name=org.postgresql.Driver
# Hikari Settings
spring.datasource.hikari.maximum-pool-size=10
spring.datasource.hikari.minimum-idle=5
spring.datasource.hikari.idle-timeout=60000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.pool-name=MeuHikariPool
💠 2. Configuração em application.yml
spring:
datasource:
url: jdbc:postgresql://localhost:5432/meubanco
username: usuario
password: senha
driver-class-name: org.postgresql.Driver
hikari:
pool-name: MeuHikariPool
maximum-pool-size: 10
minimum-idle: 5
idle-timeout: 60000
connection-timeout: 30000
max-lifetime: 1800000
🔍 3. Explicação dos Parâmetros Principais
maximum-pool-size | Máximo de conexões ativas ao mesmo tempo. |
minimum-idle | Quantidade mínima de conexões ociosas. |
connection-timeout | Tempo máximo para esperar uma conexão antes de erro. |
idle-timeout | Tempo máximo para uma conexão ficar parada. |
max-lifetime | Tempo de vida máximo da conexão (importante para alguns bancos e firewalls). |
pool-name | Nome do pool (útil para logs e monitoramento). |
⚙️ 4. Configurando via Java (opcional)
Se quiser configurar programaticamente:
@Configuration
public class HikariConfigApp {
@Bean
public DataSource dataSource() {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:postgresql://localhost:5432/meubanco");
config.setUsername("usuario");
config.setPassword("senha");
config.setMaximumPoolSize(10);
config.setMinimumIdle(5);
config.setIdleTimeout(60000);
config.setMaxLifetime(1800000);
config.setConnectionTimeout(30000);
config.setPoolName("MeuHikariPool");
return new HikariDataSource(config);
}
}
📊 5. Como verificar se o Hikari está funcionando
Quando a aplicação sobe, você deve ver no log algo como:
HikariPool-1 - Starting...
HikariPool-1 - Start completed.
Ou com nome personalizado:
MeuHikariPool - Starting...
MeuHikariPool - Start completed.
