Banco de Dados (PostgreSQL)
PostgreSQL é um sistema de gerenciamento de banco de dados relacional (SGBD) open-source. Ele oferece suporte avançado a transações, integridade referencial, extensibilidade (com tipos personalizados, funções e linguagens), além de excelente desempenho para aplicações de pequeno a grande porte. Ideal para projetos que exigem consistência de dados e operações complexas.
A modelagem do Banco de Dados foi feita com o mesmo, conhecido por:
- sua robustez;
- confiabilidade e alto desempenho;
- oferece grande extensibilidade;
- compatibilidade com o padrão SQL;
- escalabilidade e suporte a uma variedade de tipos de dados e linguagens de programação;
- Suporte a dados complexos (ex: JSON, ARRAY, UUID);
- Comunidade ativa e global;
H2 (Testes de Integração)
O H2 é um banco de dados em memória e de código aberto, escrito em Java, que é utilizado para criar ambientes de teste rápidos e leves para a validação da interação entre diferentes componentes de software. Usamos H2 para testes de integração, porque é um banco de dados relacional leve, rápido e em memória, o que permite testar o código em um ambiente isolado e sem necessidade de um servidor de banco de dados físico.
JPA (ORM)
JPA Java Persistence API é uma especificação Java que define um conjunto de interfaces e padrões para o mapeamento objeto-relacional (ORM), facilitando a persistência de objetos Java em bancos de dados relacionais. Ela permite que desenvolvedores manipulem dados usando código Java, abstraindo a complexidade do SQL e permitindo que o aplicativo se conecte a diferentes frameworks ORM, como o Hibernate, que fornecem a implementação concreta.