pessoal. doidera, doidera… no meu banco de dados o registro de chave composta é unica na tabela, mas quando dou um get no objeto passando a chave ele me retorna 3 registros! como pode?!RESOLVIDO
Só se tiver alguma join maluca na hr de fazer a busca. Habilita a opção show_sql do hibernate pra ver q join ele está fazendo.
mas ele te retorna o mesmo registro tres vezes? se for isso pode ser algo relacionado a vc carregar ele em multiplas classes.
os joins dele esta correto. eu vejo no console sempre, outra coisa é que é o mesmo registro triplicado
a busca é simples apenas um session.get(classe,chavecomposta)
retorna o mesmo registro 3 vezes. no banco tem apenas 1.
ja tentei da session.clear();
Arthur, me refiro à joins na query do hibernate. O mapeamento desta classe não tem relacionamento com nenhuma outra classe do seu sistema?
arthurminarini, ja aconteceu comigo de eu mapear uma coleção dos dois lados e trazer ela com fetch=Fetch.EAGER e acontecer isso de duplicar ou triplicar a coleção, ai só tirei o Fetch.EAGER e no meu acabou o problema
posta ai os relacionamentos que a sua classe possui e como vc mapeou pra gente ter uma ideia melhor
[]'s
tem onetoone e manytone. Não tem manytomany e não tem onetomany
coloca o show_sql e depois verifica a query que o hibernate vai gerar. provavelmente é algum problema na query… fazendo isso vc descobre o que está errado…
no sql gerado para cada many to one que tenho na classe ele gerou um select individual. por exemplo. se eu tenho na classe 3 relacionamentos ele gerou o sql de cada tabela referenciada no relacionamento em sql(select) diferente e o sql da classe consultada truxe apenas um select normal sem inner nem left sem junção alguma
arthurminarini, se vc puder postar seus mapeamentos e sua consulta fica mais facil te ajudar!
[]'s
vlw pessoal pela ajuda . mas era que na classe de cliente tinha um relacionamento que na tabela não tinha ai eu tirei fora o relacionamento e deu certo vlw!!