Uma API Rest para entrega de comida.
Demonstrar conceitos de API Rest, SpringBoot, arquitetura de software e diversos conceitos de JPA.
- Para persistência de dados foi utilizado o SGBD MySql;
- Foi utilizado o Hibernate como implementação para o JPA;
- Lombok para diminuir o Boilerplate code;
- Utilizado o ModelMapper para facilitar a aplicação do padrão DTO;
- Versionamento do banco de dados feito através do Flyway;
Para a validação de dados foi utilizado a especificação Jakarta Bean Validation com a implementação do Hibernate Validator;
Os erros foram tratados utilizando o ControllerAdvice do próprio Spring Framework, com a criação de exceptions e mensagens personalizadas para cada tipo de erro. Foi utilizado como norma o Problem Details for HTTP Apis rfc7807;
Foi utilizado o MySql 8.0 para esta aplicação mas também é suportado o banco H2 qual está pré configurado.
Os testes foram realizados utilizando JUnit, Mockito e Hamcrest. Os tipos de teste deste projeto são:
- Teste de Integração
Muito obrigado pela atenção e qualquer dúvida ou sugestão, basta me contactar.
Me chamo Vinícius Ornelas de Almeida e estou mergulhando na carreira de desenvolvedor. Quem sabe uma hora a gente não se ajuda?
- CONTATO