Pular para o conteúdo principal

Questão de Programação — Frameworks Java — FCC 2024

ProgramaçãoFrameworks Java
Código
fc071910
Banca
FCC
Órgão
TRT - 20ª REGIÃO (SE)
Ano
2024
Nível
Superior
Cargo
Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação
Um Analista de um Tribunal necessita habilitar o Hibernate Envers em uma entidade. Para isso, ele deve
  1. Autilizar o método session.saveOrUpdate () para a entidade.
  2. Banotar a entidade com @Audited.
  3. Cconfiguraro hibernate.envers. enabled como true no arquivo de configuração.
  4. DEstender a classe AuditEntitry fomecida pelo Hibernate Envers.
  5. Econfigurar o audit-log no arquivo persistence.xml.
Revelar gabarito e comentário

GabaritoB — anotar a entidade com @Audited.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Hibernate Envers – Habilitar auditoria em entidade

Gabarito: letra B. Para habilitar o Hibernate Envers em uma entidade específica, o desenvolvedor deve anotar a entidade com @Audited. Essa anotação indica ao Envers que todas as alterações naquela entidade devem ser auditadas.

A questão testa o conhecimento da principal forma de ativar a auditoria em uma entidade. As demais alternativas apresentam ações incorretas ou incompletas.

Alternativa A — ❌ Incorreta

O método session.saveOrUpdate() é um método genérico do Hibernate para persistir ou atualizar uma entidade, mas não tem relação com a ativação da auditoria. O Envers não depende desse método para funcionar; a auditoria é ativada via anotação.

Alternativa B — ✅ Correta ⟵ GABARITO

A anotação @Audited é o mecanismo padrão do Hibernate Envers para marcar uma entidade como auditável. Uma vez anotada, todas as operações de inserção, atualização e remoção são registradas nas tabelas de auditoria.

Alternativa C — ❌ Incorreta

A propriedade hibernate.envers.enabled pode ser configurada como true no arquivo de configuração (ex.: hibernate.cfg.xml ou application.properties) para habilitar globalmente o Envers. No entanto, para habilitar a auditoria em uma entidade específica, é necessário usar @Audited. A alternativa confunde a ativação global com a ativação por entidade.

Alternativa D — ❌ Incorreta

Não é necessário estender nenhuma classe fornecida pelo Hibernate Envers. O Envers funciona por anotação ou mapeamento XML, e a extensão de AuditEntity (se existir) não é requerida.

Alternativa E — ❌ Incorreta

O arquivo persistence.xml é usado em ambientes JPA para configuração de unidade de persistência. A configuração do Envers pode ser feita via propriedades JPA, mas não existe um elemento específico "audit-log" para habilitar auditoria por entidade. A forma correta continua sendo a anotação @Audited.

PEGA ESSA DICA!

Em questões sobre Hibernate Envers, lembre-se: a anotação @Audited é a chave para habilitar auditoria em uma entidade. Propriedades de configuração (como hibernate.envers.enabled) são para ativação global, não por entidade.

Gabarito: letra B.

Link permanente: /questoes/fc071910