

Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
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:
utilizar a funcionalidade de Customized Revision Metadata do Envers para armazenar o nome do usuário em um campo específico da tabela de auditoria da entidade Projeto;
implementar um filtro de auditoria no Envers para interceptar as operações de alteração na entidade Projeto e adicionar o nome do usuário ao histórico de revisões;
criar uma anotação customizada, herdada de AuditOverride, para incluir o nome do usuário como um atributo adicional no registro de auditoria da entidade Projeto;
utilizar um interceptor do Hibernate para capturar as operações de persistência e adicionar o nome do usuário ao campo revisedBy em cada registro de auditoria da entidade Projeto;
configurar um Revision Listener no Envers para capturar o evento de alteração na entidade Projeto e preencher um campo customizado com o nome do usuário logado no momento da alteração.