FC ConcursosFC Concursos

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

  1. a partir dos dados de um funcionário podem-se obter os departamentos aos quais ele está associado.
  2. 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.
  3. 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.
  4. há um relacionamento com cardinalidade 1-para-muitos entre as classes Departamento e Funcionario, ou seja, 1 departamento pode conter muitos funcionários.
  5. 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

Continue aprendendo