API REST em Java — CRUD de Produtos
Completo • 2024API REST em Java com CRUD completo de produtos, persistência em banco, validação de dados, migrations com Flyway e documentação via Swagger/OpenAPI.
BackendArquitetura
JavaSpring BootJPAFlywaySwaggerJUnit
Preview do sistema


Métricas
API
REST
endpoints para listar, cadastrar, editar e remover
Banco
JPA + Flyway
persistência e versionamento do schema
Docs
Swagger UI
documentação interativa via OpenAPI
Execução
Spring Boot
subida local com Maven
Como executar
Headless
mvn testUI (visual)
mvn spring-boot:runDica: Rode os comandos na raiz do projeto, onde está o pom.xml.
Destaques
- CRUD completo de produtos com validação de entrada
- Tratamento de erros padronizado para respostas mais consistentes
- Migrations com Flyway e documentação interativa com Swagger
Case Study
Contexto
Context
O projeto foi desenvolvido para demonstrar uma API backend em Java com estrutura mais próxima de um ambiente profissional, indo além do CRUD básico ao incluir persistência, validação, versionamento do banco e documentação navegável.
The project was built to demonstrate a Java backend API with a structure closer to a professional environment, going beyond basic CRUD by including persistence, validation, database versioning, and browsable documentation.
Objetivo
Goal
PT
- Construir uma API CRUD com boas práticas de backend.
- Garantir consistência do banco com migrations.
- Documentar os endpoints para facilitar testes e exploração da API.
EN
- Build a CRUD API with backend best practices.
- Ensure database consistency with migrations.
- Document endpoints to make API testing and exploration easier.
Abordagem
Approach
PT
- Separação em camadas com controller, service, repository e DTOs.
- Validação de entrada e respostas de erro padronizadas.
- Uso de Swagger/OpenAPI para documentação interativa dos endpoints.
EN
- Layered separation with controller, service, repository and DTOs.
- Input validation and standardized error responses.
- Use of Swagger/OpenAPI for interactive endpoint documentation.
Resultados
Results
PT
- API funcional com operações completas de CRUD.
- Documentação acessível pelo navegador para demonstração do projeto.
- Base pronta para evoluções como autenticação, CI e deploy em nuvem.
EN
- Functional API with complete CRUD operations.
- Documentation accessible through the browser for project showcase.
- A solid base for future improvements such as authentication, CI, and cloud deployment.
