rdswithapirest
rdswithapirest copied to clipboard
Inclusão Anotação @PathVariable - Classe EmployeeControllerHateoas.java
Olá Juliana,
Ao tentar realizar teste no postman com o método PUT implementado na Classe EmployeeControllerHateoas.java Estava ocorrendo erro me indicando que o ID que estava recebendo era NULL. Então coloquei anotação @PathVariable no parâmetro ID do método replaceEmployee dessa forma.
@PutMapping("/employees/update/{id}")
EmployeeHateoas replaceEmployee(@RequestBody EmployeeHateoas newEmployee, @PathVariable Long id){
return repository.findById(id).map(employee -> {
employee.setName(newEmployee.getName());
employee.setAddress(newEmployee.getAddress());
employee.setRole(newEmployee.getRole());
return repository.save(newEmployee);
}).orElseGet(() -> {
newEmployee.setId(id);
return repository.save(newEmployee);
});
Dessa forma é realizada o update no banco com os dados passados no body da requisição.
Espero que agregue valor para a comunidade.
Parabéns pelo curso.
Olá HeannaReis, realmente. O PUT nunca iria funcionar sem essa anotação. Obrigada!