1
resposta

Annotation @Transactional

Para realizar o cadastro (POST), não foi necessário utilizar o @Transactional. Minha dúvida é pq foi necessário utilizar para o atualizar (PUT)? Como as duas operações são de escrita, fiquei sem entender pq uma precisa do contexto transacional e outra não.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oi Carlos,

É porque no método salvar a gente chamou explicitamente o método save do repository, que dispara o commit automatico da transação.

Mas no método atualizar, eu apenas carreguei a entidade e atualizei os atributos dela. Nenhum método do repository para fazer o update no banco foi chamado e por isso precisou da anotação @Transactional para forçar o update.

Bons estudos!