Pular para conteúdo

Aula 16 - Projeto Final: API Completa 🚀

Parabéns por chegar até aqui! Agora é hora de colocar todo o conhecimento em prática construindo uma API REST completa, do zero ao deploy.

😊 O Desafio Final

Você deve desenvolver uma API REST funcional seguindo todos os padrões aprendidos: Camadas (Controller/Service/Repository) + JPA + DTOs + Testes + Spring Security + JWT + Docker.

Sugestões de Temas:

  1. API de Biblioteca: Cadastro de livros, autores e empréstimos.
  2. API de Tarefas (To-do): Tarefas com prioridade, status e usuário dono.
  3. API de E-commerce Simples: Produtos, categorias e pedidos.
  4. API de Eventos: Cadastro de eventos e inscrições de participantes.

📊 Requisitos do Projeto

mindmap
  root((Projeto Final))
    Arquitetura
      Camadas bem definidas
      DTOs em todas as respostas
    Persistencia
      Entidades relacionadas
      Spring Data JPA
    Qualidade
      Validacao Bean Validation
      Testes unitarios com Mockito
      Documentacao Swagger
    Seguranca
      Spring Security
      JWT
      Senhas com BCrypt
    Producao
      Dockerfile
      docker-compose com banco

🧠 Checklist de Entrega

  • Pelo menos 2 entidades relacionadas (ex: @OneToMany/@ManyToOne).
  • CRUD completo (GET, POST, PUT, DELETE) usando DTOs nas respostas.
  • Validação de dados de entrada com Bean Validation.
  • Pelo menos 3 rotas protegidas por autenticação JWT.
  • Pelo menos 3 testes unitários com Mockito no Service.
  • Documentação Swagger acessível em /swagger-ui.html.
  • Dockerfile e docker-compose.yml funcionando com docker compose up.

📝 Documentação Exigida

Note

Escreva um README.md explicando: 1. O que a API faz. 2. Como rodar o projeto (com e sem Docker). 3. Quais tecnologias foram utilizadas. 4. Como autenticar e testar as rotas protegidas (exemplo de login + uso do token).

🚀 Mini-projeto: Inicie o desenvolvimento da sua API. Comece pela modelagem das entidades e pela estrutura de camadas — os próximos passos (segurança, testes, Docker) se encaixam naturalmente sobre essa base.


Parabéns! Você concluiu o curso de Backend com Java e Spring Boot! ☕🚀

Você percorreu uma jornada completa: dos fundamentos do ecossistema Java, passando por Injeção de Dependências, APIs REST, persistência com JPA, testes automatizados, documentação e segurança com Spring Security/JWT, até o empacotamento com Docker. Você está pronto para construir e defender APIs profissionais no mercado de trabalho!