Salve galera…
Seguinte, eu estou tentando a dias fazer um saveOrUpdate() com Hibernate…Tenho uma tabela chamada Permissoes, nesta tabela eu tenho 2 campos FK: Idperfil e Idmodulo. O Idperfil é FK da tabela perfil no campo Id, e o campo Idmodulo é FK da tabela modulos no campo Id.
O que acontece é quando vou dar um update nesta tabela baseado no idperfil, ao invés de dar um update no que tem, é criado novos registros. Acho que isto acontece pq na tabela Permissoes eu tenho uma PK chamada Id e com autoincremento, então eu quero ignorar essa PK no saveOrUpdate().
Bem, resumindo tudo…O saveOrUpdate(), não da update e sim duplica os registros que ja tenho. Eu preciso que ele salve se não existir e de update de existir. Acredito que ignorando o Id da tabela Permissoes funcionaria, porem não sei como fazer isso.
Andei lendo umas coisas, e li algo sobre o evict…Porem não consegui implementar. Alguma sugestão ?
Tentei assim.
Permissoes permissoes = new Permissoes();
session.evict(permissoes.getClass().getId());
session.saveOrUpdate(permissoes);
obrigado