Bom eu populo meus POJOs
String pergunta = "Pergunta enquete";
String resp1 = "alternativa 1";
String resp2 = "alternativa 2";
String resp3 = "alternativa 3";
String resp4 = "alternativa 4";
T066_enquete t066 = new T066_enquete();
t066.setT066_pergunta(pergunta);
t066.setT066_condicao(1);
T067_alternativas_enquete at1 = new T067_alternativas_enquete(resp1,0);
T067_alternativas_enquete at2 = new T067_alternativas_enquete(resp2,0);
T067_alternativas_enquete at3 = new T067_alternativas_enquete(resp3,0);
T067_alternativas_enquete at4 = new T067_alternativas_enquete(resp4,0);
t066.getAlternativas().add(at1);
t066.getAlternativas().add(at2);
t066.getAlternativas
().add(at3);
t066.getAlternativas().add(at4);
//Agora eu persisto meu objeto enquete, que automaticamente persistirá suas alternativas
new T066_enqueteDAO().salvar(t066);
O método salvar la so tem comando session.save(t066)
Eu estou apenas começando com o hibernate, e estou fazendo alguns testes. Ainda não criei nada complexo
O meu enquete esta:
@Entity
@org.hibernate.annotations.Entity(mutable = true, dynamicInsert = true, dynamicUpdate = true)
@Table(name = "t066_enquete")
@SequenceGenerator(name = "t066_enquete_t066_codigo_seq", sequenceName = "t066_enquete_t066_codigo_seq")
public class T066_enquete implements Serializable{
Integer t066_codigo;
String t066_pergunta;
Date t066_data_hora;
int t066_condicao;
List <T067_alternativas_enquete> alternativas = new ArrayList<T067_alternativas_enquete>();
public T066_enquete() {
}
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = "t066_enquete_t066_codigo_seq")
@Column(name = "t066_codigo")
public Integer getT066_codigo() {
return t066_codigo;
}
public void setT066_codigo(Integer t066_codigo) {
this.t066_codigo = t066_codigo;
}
@Column(name = "t066_pergunta")
public String getT066_pergunta() {
return t066_pergunta;
}
public void setT066_pergunta(String t066_pergunta) {
this.t066_pergunta = t066_pergunta;
}
@Temporal(
TemporalType.TIMESTAMP)
@Column(name = "t066_data_hora")
public Date getT066_data_hora() {
return t066_data_hora;
}
public void setT066_data_hora(Date t066_data_hora) {
this.t066_data_hora = t066_data_hora;
}
@Column(name = "t066_condicao")
public int getT066_condicao() {
return t066_condicao;
}
public void setT066_condicao(int t066_condicao) {
this.t066_condicao = t066_condicao;
}
@OneToMany(cascade = CascadeType.ALL)
@JoinColumn(name="t066_codigo")
public List<T067_alternativas_enquete> getAlternativas() {
return alternativas;
}
public void setAlternativas(List<T067_alternativas_enquete> alternativas) {
this.alternativas = alternativas;
}
}
e as alternativas
@Entity
@org.hibernate.annotations.Entity(mutable = true, dynamicInsert = true, dynamicUpdate = true)
@Table(name = "t067_alternativas_enquete")
@SequenceGenerator(name = "t067_alternativas_enquete_t067_codigo_seq",
sequenceName = "t067_alternativas_enquete_t067_codigo_seq")
public class T067_alternativas_enquete {
Integer t067_codigo;
Integer t066_codigo;
String t067_alternativa;
Integer t067_contador;
T066_enquete t066_enquete;
public T067_alternativas_enquete() {
}
public T067_alternativas_enquete(String t067_alternativa,Integer t067_contador) {
this.t067_alternativa = t067_alternativa;
this.t067_contador = t067_contador;
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "t067_alternativas_enquete_t067_codigo_seq")
@Column(name = "t067_codigo")
public Integer getT067_codigo() {
return t067_codigo;
}
public void setT067_codigo(Integer t067_codigo) {
this.t067_codigo = t067_codigo;
}
/* @Column(name = "t066_codigo")
public Integer getT066_codigo() {
return t066_codigo;
}
public void setT066_codigo(Integer t066_codigo) {
this.t066_codigo
= t066_codigo;
}
*/
@Column(name = "t067_alternativa")
public String getT067_alternativa() {
return t067_alternativa;
}
public void setT067_alternativa(String t067_alternativa) {
this.t067_alternativa = t067_alternativa;
}
@Column(name = "t067_contador")
public Integer getT067_contador() {
return t067_contador;
}
public void setT067_contador(Integer t067_contador) {
this.t067_contador = t067_contador;
}
@ManyToOne
// @JoinColumn(name="t066_codigo", insertable=false, updatable=false)
@ForeignKey(name="t066_codigo")
public T066_enquete getT066_enquete() {
return t066_enquete;
}
public void setT066_enquete(T066_enquete t066_enquete) {
this.t066_enquete = t066_enquete;
}
Valeu pela ajuda!