O projeto DS Catalog, consiste em um sistema backend de busca de produtos/categorias construído usando Spring Boot e sua API utiliza a arquitetura REST,
com nível de maturidade 3 (Richardson Maturity Model). O diagrama de classes está descrito abaixo.
.
- Autenticação utilizando Spring Security (OAuth2/JWT) e token JWT, possuindo também refresh de token caso necessário
- Rotas protegidas por nivel de acesso do usuário (role)
- Descrição dos endpoints (swagger) em https://dscatalog-with-deploy-railway-production.up.railway.app/swagger-ui.html#/user-resource
- Deploy do aplicativo em cloud (railway.com), com acesso ao bando de dados Postgres
- Implementação de queries usando JPQL para filtrar produtos por nome e por categoria
- Tratamento de diversas exceções de forma a encaminhar mensagem user-friendly para o front-end.
- Implementação de 37 testes unitários usando Mockito e Junit 5
Os requests do Postman estão disponíveis para importação no arquivo DSCATALOG.postman_collection.json
.