Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Estou pegando o ID do recurso criado sem ter feito uma busca pelo mesmo?

Gostaria de entender o seguinte código:

topicoRepository.save(topico);
URI uri = uriBUilder.path("/topicos/{id}").buildAndExpand(topico.getId()).toUri();

A parte que não consigo entender é como se consegue pegar o valor do ID dando topico.getId() , sendo que a referência de topico só possui título, mensagem e Curso.

Quem atribuiu o valor do ID foi o banco de dados e ao executar topicoRepository.save(topico); não temos nenhum retorno de um topico preenchido com ID....

Desde já, agradeço a atenção de todos.

2 respostas
solução!

Oi Rodrigo,

Ao chamar o topicoRepository.save(topico); o Hibernate já faz o insert no banco de dados e atualiza automaticamente o objeto topico setando nele o id que foi gerado.

Por isso na linha seguinte o objeto topico já está com o id preenchido.

Bons estudos!

Entendi.

Muito obrigado Rodrigo.