Por que um método anotado pelo JPA @ PreUpdate é chamado durante uma consulta?
Eu tenho uma consulta nomeada que retorna umCollection
de entidades.
Essas entidades têm@PreUpdate
-annotated método sobre eles. Este método é invocado durantequery.getResultList()
. Por causa disso, a entidade é alterada dentro do contexto de persistência, o que significa que, após a confirmação da transação, a entidade é gravada no banco de dados.
Por que é isso? A especificação JPA 2.0 não menciona explicitamente que@PreUpdate
deve ser chamado pela execução da consulta.