Hibernate OneToMany

2 respostas
dugbuddy

Galera,

Estou tendo um problema com @OneToMany.. mas assim.... o mapeamento esta correto e tudo mais...
Quando eu gravo .. sabendo que eu tenho 2 centros ... eu consigo gravar.. o problema é quando eu não sei... ex..
um Checkbox com 3 opcoes... Centro 1 .. Centro 2. .. Centro 3....
Pode ser tanto as 3 opcoes quando uma só..
Para isso eu tenho que fazer um FOR...
Mas eu nao estou conseguindo..
Alguem poderia me ajudar ??

Universidade univ = new Universidade();
univ.setNome("Universidade Federal do Rio Grande do Norte");

Centro centro1 = new Centro();
centro1.setNome("Centro de Tecnologia");
centro1.setUniversidade(univ);

Centro centro2 = new Centro();
centro2.setNome("Centro de Humanas");
centro2.setUniversidade(univ);

univ.setCentros(new HashSet<Centro>());

univ.getCentros().add(centro1);
univ.getCentros().add(centro2);

session.save(univ);

2 Respostas

dugbuddy

Abaixo estao os Mapeamentos

Universidade

@Entity @Table(schema="anotacoes")
public class Universidade {

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@Column(name="id_universidade")
private int id;

private String nome;

@OneToMany(mappedBy="universidade", fetch = FetchType.LAZY)
@Cascade(CascadeType.ALL)
private Collection<Centro> centros;

Centros

public class Centro {

@Id @GeneratedValue(strategy = GenerationType.SEQUENCE)
@Column(name="id_centro")
private int id;

private String nome;

@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name="id_universidade",
insertable=true, updatable=true)
@Fetch(FetchMode.JOIN)
@Cascade(CascadeType.SAVE_UPDATE)
private Universidade universidade; //Métodos getters e setters
dugbuddy

Alguem tem alguma dica sobre Hibernate ?

obrigado

Criado 11 de dezembro de 2009
Ultima resposta 14 de dez. de 2009
Respostas 2
Participantes 1