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

Como o cache se comporta se ocorrer alguma alteração no banco de dados?

Olá, ao ativar o cache no método lista é possível que o Spring detecta que ocorreu alguma alteração no banco de dados? Fiz um teste com o h2 deletando um registro e ao disparar uma requisição o cache continuou trazendo o registro que ja foi deletado.

3 respostas

no curso foi mostrado o CacheEvict mas se o evento acontecer somente via banco, existe alguma forma do Spring reconhecer?

solução!

Oi Marcos,

Se uma alteração no banco de dados ocorrer de "fora" da aplicação, infelizmente não tem como o Spring detectar e com isso o cache vai continuar trazendo registros inválidos.

O que pode ser feito é criar um método para limpar todo o cache, e esse método pode ser chamado sempre que alguma mudança externa for realizada no banco de dados.

Bons estudos!

Muito obrigado pelos esclarecimentos!