Galera eu tenho a seguinte duvida:
1º A maneira correta de se trabalhar com JPA é salvar e atualizar sempre em cascata? ou salvar as Entitys em separado?
2º Eu preciso colocar minha estrategia de cascata tipo cascade=Cascade.MERGE tanto no lado OneToMany quanto no ManyToOne?
3° Eu preciso sempre setar um objeto no outro exemplo:
email.setPessoa(pessoa);
pessoa.getEmailSet().add(email)?
Estou com muitos problemas, venho lendo varios matériais na net mais ainda não consegui entender direito como funciona o cascade!
Alguem poderia sanar minhas duvidas e explicar como funciona?
salvar entidades separadas ou em cascata sao opçoes corretas, veja oque é melhor para o seu caso
o ideal é evitar associaçoes bidirecionais em seu codigo pois elas trazer esse tipo de complexidade
leia isso que vc entedera bem: http://blog.caelum.com.br/2007/03/28/como-nao-aprender-orientacao-a-objetos-relacionamento-bidirecional/
abrassssss
O artigo fala do problema dos relacionamentos bidirecionais, mais não cita como trata-lo. No meu caso aqui
isto é imprescindível. Eu gostaria de saber é como trata-los e como funciona o cascade para que eu possa usar
com critério sabendo o que realmente estou fazendo.
email.setPessoa(pessoa);
pessoa.getEmailSet().add(email)
sim é interessante fazer a associaçao como no codigo acima, para mante-lo consistente.
quanto ao cascade voce pode seta-lo apenas no obj Pessoa, assim sempre que ocorrer uma operaçao nesse obj, ela sera propagada aos objs Email associados…
aho que no seu caso Cascade.ALL seria melhor
abrasssssss