O analista João deve utilizar o Hibernate Envers para imple...

Próximas questões
Com base no mesmo assunto
Q3874365 Engenharia de Software
O analista João deve utilizar o Hibernate Envers para implementar a auditoria de entidades em um sistema de gestão de projetos. Um dos requisitos de negócio é que, ao ser realizada uma alteração na entidade Projeto, o histórico de revisões dessa entidade inclua, além dos dados da alteração, o nome do usuário responsável pela modificação. Para atender ao requisito de negócio da forma mais adequada, João deve:
Alternativas

Comentários

Veja os comentários dos nossos alunos

A resposta correta é a letra E.

João deve configurar um Revision Listener no Envers para capturar o evento de alteração e preencher um campo personalizado na entidade de revisão com o nome do usuário logado. Esta é a abordagem documentada e recomendada pela documentação oficial do Hibernate Envers para adicionar metadados personalizados às revisões, como informações de usuário ou endereço IP.

️ Por que as outras alternativas estão incorretas?

Alternativa A (Customized Revision Metadata): Embora o conceito de "metadados de revisão personalizados" esteja correto, ele não é implementado através de uma funcionalidade específica com esse nome. A implementação desse conceito é feita, na prática, exatamente através da criação de uma RevisionEntity e um RevisionListener .

Alternativa B (Filtro de auditoria): O Envers não possui um conceito nativo de "filtro de auditoria" para essa finalidade. A interceptação correta e a mais simples é feita através do RevisionListener.

Alternativa C (Anotação customizada herdada de AuditOverride): A anotação @AuditOverride é usada para sobrescrever configurações de auditoria em componentes embutidos (como @Embeddable), e não para adicionar metadados de revisão como o nome do usuário .

Alternativa D (Interceptor do Hibernate): Esta é uma solução de mais baixo nível e mais genérica. Embora funcione, ela não é específica do Envers e exigiria que João implementasse manualmente a lógica para associar o nome do usuário ao número da revisão correta. O RevisionListener é a ferramenta certa para o trabalho, pois opera dentro do ciclo de vida de criação de revisões do Envers.

Fonte: DeepSeek

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo