Questão FC373632
Considere as linhas abaixo, presentes em uma classe chamada Departamento.java de um aplicação que utiliza JPA 2.0 implementada com Hibernate 4.3. @OneToMany(cascade = CascadeType.A
Plataforma Java EE
FCC · 2022
Considere as linhas abaixo, presentes em uma classe chamada Departamento.java de um aplicação que utiliza JPA 2.0 implementada com Hibernate 4.3.
@OneToMany(cascade = CascadeType.ALL, mappedBy = "departamento", fetch = FetchType.EAGER)
private List<Funcionario> funcionarioList;
Estas linhas permitem concluir corretamente que
- a partir dos dados de um funcionário podem-se obter os departamentos aos quais ele está associado.
- há um relacionamento com cardinalidade 1-para-muitos entre as classes Funcionario e Departamento, ou seja, 1 funcionário pode estar relacionado a muitos departamentos.
- a instrução FetchType.EAGER está incorreta e deve ser substituída por FetchType.LAZY para que os funcionários associados a um departamento sejam carregados sob demanda.
- há um relacionamento com cardinalidade 1-para-muitos entre as classes Departamento e Funcionario, ou seja, 1 departamento pode conter muitos funcionários.
- a chave primária da entidade/classe Departamento é composta pelo id do departamento e pelo id do funcionário.
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
@OneToMany aplicada sobre List<Funcionario> indica que a classe Departamento mantém uma coleção de instâncias de Funcionario, ou seja, há cardinalidade 1-para-muitos: um departamento pode agrupar vários funcionários.
O atributo mappedBy="departamento" revela que esta é a parte inversa do relacionamento; o lado proprietário fica na entidade Funcionario, onde existe um atributo (provavelmente anotado com @ManyToOne) que aponta para o departamento.
CascadeType.ALL faz com que operações de persistência/remoção no departamento sejam propagadas aos funcionários da coleção.
FetchType.EAGER determina que a lista de funcionários seja carregada imediatamente junto com o departamento.
Na base, a tabela de funcionários conterá a chave estrangeira para o departamento, representando o vínculo 1 → N.
Conteúdo do catálogo FC Concursos · Atualizado em