Projeto DSList

API REST | Java Spring Boot

Visão geral

DSList e uma aplicacao back-end construida durante o Intensivao Java Spring da DevSuperior. A API organiza uma lista ficticia de games, com titulo, ano, imagem e descricao, e permite a reorganizacao da ordem dos jogos conforme a preferencia do usuario.

Funcionalidades

  • Listagem de jogos e listas com endpoints REST.
  • Consulta detalhada por identificador.
  • Reordenacao de jogos dentro da lista com operacao de update.
  • Uso de DTO para trafego de dados entre camadas.
  • Configuracao de perfis para ambientes test, dev e prod.

Tecnologias

  • Java + Spring Boot.
  • Spring Data JPA e Hibernate.
  • Maven para build e gerenciamento de dependencias.
  • Docker Compose para ambiente local.
  • Railway e PostgreSQL para producao.

Arquitetura e padroes

  • Arquitetura em camadas MVC: Controller, Service e Repository.
  • Padrao DTO para separar dados de transporte das entidades.
  • Relacionamentos N-N com classe de associacao e embedded id.
  • Consultas SQL no Spring Data JPA e uso de projections.
  • Boas praticas de API REST, incluindo idempotencia e CORS.

Ambientes e operacao

  1. No ambiente local de homologacao e testes, o projeto utiliza H2 Database.
  2. As rotas foram testadas com Postman durante o desenvolvimento.
  3. Em producao, a API roda no Railway App com PostgreSQL.
  4. O README documenta a esteira de deploy e integracao via GitHub.

Resumo tecnico

O DSList demonstra uma base solida de desenvolvimento back-end com Java e Spring, cobrindo do desenho de dominio ate deploy em nuvem. E um projeto enxuto, mas completo, pensado para demonstrar arquitetura, organizacao de codigo e fundamentos de APIs REST em um cenario realista.