JS Post

Java 21 Spring Data JPA

✅ Configurando uma instância do PostGreSQL no Docker ⭐Para utilizar Spring Data JPA vamos precisar instalar um banco de dados relacional, para isso vamos utilizar o Docker para subir os serviços do banco.

Java 21 é uma versão LTS (Long-Term Support) e traz melhorias importantes:

🔹 Principais recursos

  • Record Patterns e Pattern Matching mais avançados.
  • Virtual Threads (Project Loom) → melhora desempenho de sistemas concorrentes.
  • Sequenced Collections → coleções com ordenação consistente.
  • Improvements no Garbage Collector → mais performance e menor latência.
  • Syntax mais moderna com switch melhorado e var.

🔹 Por que é útil para aplicações Spring?

  • Melhor desempenho para APIs de alta carga.
  • Código mais limpo, seguro e moderno.
  • Threads virtuais ajudam muito com requisições simultâneas.

Resumo de Spring Data JPA

Spring Data JPA é um módulo que facilita o uso do JPA/Hibernate no Spring, reduzindo código e simplificando o acesso ao banco de dados.

🔹 O que ele oferece

  • Repositórios prontos (CRUD completo sem implementar nada).
  • Query Methods → consultas automáticas baseadas no nome do método.
  • Suporte a JPQL, SQL nativo e @Query.
  • Paginação e ordenação embutidas.
  • Facilita relacionamento entre entidades:
    • @OneToOne
    • @OneToMany
    • @ManyToOne
    • @ManyToMany

🔹 Exemplo rápido de repositório

🔹 Benefícios

  • Menos boilerplate.
  • Alto nível de abstração.
  • Integração direta com Hibernate.
  • Transações gerenciadas automaticamente.

🔗 Como Java 21 + Spring Data JPA trabalham juntos

  • Java 21 oferece performance e sintaxe moderna.
  • Spring Data JPA cuida do acesso ao banco de forma simples.
  • Com Threads Virtuais, APIs que usam JPA podem escalar melhor.
  • A combinação é ideal para:
    • APIs REST
    • Sistemas corporativos
    • Microservices
    • Aplicações de alta concorrência

java

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


⚙️ 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.

JS Post

Jéssyca de Oliveira Borges – Developer FullStack

Programadora há mais de três anos de experiência Full Stack na construção e manutenção de aplicações, utilizando diversas tecnologias back-end e front-end. Algumas de minhas habilidades: Java, Springboot, Hibernate, Maven. Orale, Mongo DB Angular, React, React Native, Typescript, Javascript, npm, Angular Material, Bootstrap, CSS, HTML. Github. Postman. REST APIs, Json, HTTP. Scrum. Inglês nível intermediário. Minhas experiências e habilidades incluem, mas não estão limitadas a:

✅ Capacidade de trabalhar de forma autônoma, gerenciar múltiplas tarefas e cumprir prazos.

✅ Experiência em desenvolvimento de aplicações web.

✅ Experiência com desenvolvimento de API.

✅ Experiência com ferramentas de versionamento Git e Github.

✅ Experiência trabalhando com bancos de dados Oracle PL/SQL, MongoDB.

✅ Experiência de trabalho em ambiente de desenvolvimento ágil.

✅ Conhecimento de metodologias ágeis.

✅ Excelentes habilidades de escrita interpessoal e comunicação verbal

Informações de Contato

E-mail: jessyca@jessycadev.com.br

https://github.com/jessycadev

Instagram: @jessycadev