Questão FC374861
Em uma instituição pública que precisa manter e gerenciar dados de diferentes departamentos, necessita-se implementar a persistência de objetos Java utilizando JPA 2.0. A tarefa in
Plataforma Java EE
Instituto Consulplan · 2024
Em uma instituição pública que precisa manter e gerenciar dados de diferentes departamentos, necessita-se implementar a persistência de objetos Java utilizando JPA 2.0. A tarefa inclui a criação de entidades e relacionamentos complexos para refletir o modelo de dados da instituição. Durante o desenvolvimento é necessário garantir que as anotações JPA estejam corretas para evitar problemas de performance e integridade dos dados. Considerando o cenário no qual é necessário definir um relacionamento de um-para-muitos entre a entidade departamento e a entidade funcionário, qual das opções a seguir configura corretamente a entidade Departamento para esse relacionamento em JPA 2.0?
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
A alternativa apresenta a entidade Departamento com a configuração correta do relacionamento: @OneToMany(mappedBy="departamento", fetch=FetchType.LAZY, cascade=CascadeType.ALL, orphanRemoval=true) sobre uma coleção tipada (por exemplo, List) e a inicialização dela (ex.: = new ArrayList<>()).
O uso de mappedBy indica que a chave estrangeira fica no lado Funcionário (lado “muitos”), evitando a criação de uma tabela de junção desnecessária e garantindo integridade referencial eficiente.
Declarar fetch=FetchType.LAZY evita carregamento imediato dos funcionários, melhorando performance em consultas que não precisam da coleção.
CascadeType.ALL permite propagar operações de persistência/remoção do departamento aos funcionários, e orphanRemoval=true remove automaticamente funcionários dissociados, preservando consistência dos dados.
Também é importante ter @Id/@GeneratedValue na entidade para identidade.
Conteúdo do catálogo FC Concursos · Atualizado em



