Mapeamento de 3 entidades hibernate

2 respostas
F

Boa tarde pessoal, no meu sistema, tenho um relacionamento, que é o seguinte:

Turma, MaterialEscolar, ItemEscolar. É inserido as turmas e os materiais escolares. A Entidade ItemEscolar serve para fazer o vínculo de um material para uma turma e a quantidade de materiais.

Meu mapeamento é o seguinte:

@Entity
public class Turma {
  
  @Id
  @GeneratedValue
  private Long id;
  
  private String nome;
  
  @OneToMany(mappedBy="turma")
  private Collection<ItemEscolar> itensEscolares = new ArrayList<ItemEscolar>();
}

@Entity
public class MaterialEscolar {
  
  @Id
  @GeneratedValue
  private Long id;
  
  private String material;
}

@Entity
public class ItemEscolar {
  
  @Id
  @GeneratedValue
  private Long id;
  
  private Integer quantidade;
  
  @ManyToOne
  private Turma turma;
  
  @ManyToOne
  private MaterialEscolar materialEscolar;
}

A minha dúvida é a seguinte, quando eu carrego a turma, ele traz a lista dos materiais, porém, quando ele carrega a lista de materiais ele acaba recarregando a turma e gera um estouro de pilha porque fica carregando infinitamente. Alguma idéia de como eu posso resolver?

2 Respostas

Lucas_Abbatepaolo

Ao meu ver vc deveria utilizar um mapeamento @ManyToMany entre a Turma, MaterialEscolar

F

Lucas Abbatepaolo:
Ao meu ver vc deveria utilizar um mapeamento @ManyToMany entre a Turma, MaterialEscolar

em qual entity? na de turma? pensei em fazer um relacionamento OneToMany em turma (no momento está bidirecional), só que eu preciso da quantidade de materiais

Criado 21 de janeiro de 2013
Ultima resposta 21 de jan. de 2013
Respostas 2
Participantes 2