Pessoal, tudo bom?
Gostaria de uma ajuda com o Hibernate.
Os registros estão sendo salvos em duplicidade.
Gostaria de quando salvar uma noticia, já salvar um voto para a notícia.
Classe Voto
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="id_noticia")
@Fetch(FetchMode.JOIN)
@Cascade(org.hibernate.annotations.CascadeType.ALL)
private Noticia noticia;
Classe Noticia
@OneToMany(mappedBy="noticia", fetch= FetchType.LAZY)
@Cascade(org.hibernate.annotations.CascadeType.ALL)
private Collection<Voto> voto;
Salvar Noticia
noticiaDAO.salvarNoticia(noticia);
this.voto.setNoticia(noticia);
noticiaDAO.salvarVoto(voto);
public void salvarNoticia(Noticia noticia) {
this.session.merge(noticia);
}
public void salvarVoto(Voto voto) {
this.session.merge(voto);
}
Os registros são salvos (Noticias), mas duplicados.
Hibernate:
/* insert br.com.site.noticia.Noticia
*/ insert
into
Noticia
(ativo, dataCadastro, descricao, titulo, id_usuario, visualizacao)
values
(?, ?, ?, ?, ?, ?)
Hibernate:
/* insert br.com.site.noticia.Noticia
*/ insert
into
Noticia
(ativo, dataCadastro, descricao, titulo, id_usuario, visualizacao)
values
(?, ?, ?, ?, ?, ?)
Hibernate:
/* insert br.com.site.noticia.Voto
*/ insert
into
VotoNoticia
(dataVoto, id_usuario, voto)
values
(?, ?, ?)
Qual o procedimento para salvar uma unica vez? Grato.