- Desenvolvimento de uma API REST de cadastro, consulta, atualização e delete de Books utilizando como linguagens e ferramentas: Java, Gradle - Groovy, Postman e Intellij.
- Adicionei uma regra para não retornar
null
quando o usuário não quiser alterar algum parâmetro na atualização, ou seja, só vai atualizar o parâmetro que ele informar no body:
if(request.getTitle() != null) {
bookToUpdate.setTitle(request.getTitle());
}
if(request.getDescription() != null) {
bookToUpdate.setDescription(request.getDescription());
}
if(request.getAuthor() != null) {
bookToUpdate.setAuthor(request.getAuthor());
}
- Spring Boot DevTools
- Lombok
- Spring Web
- @AllArgsConstructor: fornece a criação de um construtor com todos os atributos;
- @Data: gera getters/setters para todos os campos não-finais e o toString apropriado, equals e implementações hashCode que envolvem os campos da classe;
- @DeleteMapping: usada para mapear solicitações HTTP DELETE em métodos manipuladores específicos;
- @GetMapping: usada para mapear solicitações HTTP GET em métodos manipuladores específicos;
- @NoArgsConstructor: gera um construtor sem parâmetros;
- @PostMapping: usada para mapear solicitações HTTP POST em métodos específicos de manipulador;
- @PutMapping: usada para mapear solicitações HTTP PUT em métodos manipuladores específicos;
- @RequestBody: indica que o valor do objeto virá do corpo da requisição;
- @RestController: marca a classe como um controlador onde cada método retorna um objeto de domínio em vez de uma visão;
- @RequestMapping: usada para mapear solicitações da web para classes manipuladoras específicas e métodos manipuladores;
- @PathVariable: indica que o valor da variável virá de uma informação da rota;
Vitor Medeiro - MEDEIRO.TECH
Lucas Araujo