Pesquisando sobre api, eu vi que as pessoas fazem o método save da seguinte maneira:
@PostMapping
public ResponseEntity<ArticleVO> create(@RequestBody ArticleVO obj) {
obj = articleService.save(obj);
URI uri = ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}")
.buildAndExpand(obj.getId()).toUri();
return ResponseEntity.created(uri).body(obj);
Alguém poderia me explica para que serve:
URI uri = ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}")
.buildAndExpand(obj.getId()).toUri();
Eu não consegui entender. O uso do ResponseEntity e do body eu até entendo, acredito que o created é para retornar o status 201, correto? Mas qual o motivo dessa URI? E para que serve cada método chamado a partir do ServletUriComponentsBuilder? E por útlimo, eu poderia mandar minha resposta sem essa uri? tipo:
return ResponseEntity.created().body(obj);