Problema com JPA(persist)

6 respostas
B

Olá comunidade,

Eu estou usando JPA e estou tentado persistir um objeto dentro de um for, só que ele possui sempre a mesma instancia e apenas um objeto é inserido.Alguém sabe me explicar isso?

em.getTransaction().begin(); Teste teste = new Teste (); for (String tr : request.getParameterValues("palavras")) { teste.setPalavra(tr); new GenericoDao(em).salvar(teste ); } em.getTransaction().commit();

Obrigado pela ajuda.

6 Respostas

zoren

Quando vc salva um objeto é atribuido um id para ele

e esse id já vai existir no banco de dados,

A solução é dentro do for vc usar um clone do seu objeto, mas a versão sem id e que não esteja sendo gerenciada pelo entity manager

aluisiodsv

Vc tem q dar um new no objeto dentro do for …

B

Entendi.

Eu tava querendo evitar a criação de news dentro do for, mais to vendo que não vai ter jeito.

Obrigado pela ajuda.

zoren

Bernardo:
Entendi.

Eu tava querendo evitar a criação de news dentro do for, mais to vendo que não vai ter jeito.

Obrigado pela ajuda.

Dar um new dentro do for não tem problema, o problema é criar a variavel dentro do for

aluisiodsv

Essas horas não pode pensar muito no gasto de memória, pq tem q ser assim …

B

Funcionou colocando o “new Teste” dentro do for mesmo.

Valeu pela ajuda pessoal.

Abs.

Criado 6 de outubro de 2010
Ultima resposta 7 de out. de 2010
Respostas 6
Participantes 3