Skip to content

ricksouzaa/poc-hexagonal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

poc-hexagonal

POC de API REST em arquitetura hexagonal com Spring Boot 4 e Java 21: cadastro de clientes com validação de CPF/CEP e enriquecimento de endereço via APIs públicas de CEP.

O que este repositório demonstra

Tema Detalhe
Domínio Clientes (CRUD), validações no núcleo, persistência JPA
Portas e adaptadores REST de entrada; ViaCEP / BrasilAPI como saída; H2 em desenvolvimento
Resiliência de CEP ViaCEP como fonte primária; BrasilAPI v1 como fallback em falha técnica (não em “CEP inexistente”). Ver ADR 0001
Contrato HTTP OpenAPI / Swagger UI em execução local

A documentação completa (fluxos, pacotes, erros HTTP, H2) está em docs/README.md — comece por 01 — visão geral e 02 — referência técnica.

Pré-requisitos

  • JDK 21+ (o pom.xml usa o Maven Enforcer para exigir essa faixa).
  • Maven3.9+ (ou wrapper, se o projeto passar a incluir mvnw).

Build e testes

mvn clean verify

Com mais de uma JDK no sistema, aponte JAVA_HOME para a JDK 21 antes do Maven:

JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 mvn clean verify

Executar a aplicação

mvn spring-boot:run
Recurso URL (padrão)
Swagger UI http://localhost:8080/swagger-ui.html
OpenAPI (JSON) http://localhost:8080/v3/api-docs
Console H2 http://localhost:8080/h2 — credenciais em src/main/resources/application.properties

Estrutura de código (resumo)

Código Java sob src/main/java/poc/hexagonal/ segue o recorte core (domínio e portas) vs adapters (REST, Feign, JPA). Convenções e camadas: 02-referencia-tecnica.md e regras em .cursor/rules/.

Documentação e entregas rastreáveis

  • PRDs / TASKs / contexto pós-task: docs/prd/, docs/tasks/, docs/context/
  • Personas de agente (Cursor): AGENTS.md

Licença e propósito

Repositório de prova de conceito e estudo; não substitui definições de produto, segurança ou operações de um sistema em produção.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages