:: Chave composta com hibernate ::

View: New views
2 Messages — Rating Filter:   Alert me  

:: Chave composta com hibernate ::

by João Thiago Silva :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.
Pessoal,
 
estou em um cliente que utiliza chave composta de maneira extremamente complexa. A aplicação rodava no oracle forms e agora vamos passar para java. Eles criaram uma coluna para servir como id no hibernate através de uma sequence e mantiveram a pk antiga. O problema é que para funcionar, o usuário final precisar o informar a pk. Ficou muito esquisito... estou querendo apresentar uma solução melhor. Alguma sugestão??
 
Att.

João Thiago Silva

"There´s no place like 127.0.0.1."



Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com.

Re: :: Chave composta com hibernate ::

by Solerman Kaplon :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.
João Thiago Silva escreveu:
 
estou em um cliente que utiliza chave composta de maneira extremamente complexa. A aplicação rodava no oracle forms e agora vamos passar para java. Eles criaram uma coluna para servir como id no hibernate através de uma sequence e mantiveram a pk antiga. O problema é que para funcionar, o usuário final precisar o informar a pk. Ficou muito esquisito... estou querendo apresentar uma solução melhor. Alguma sugestão??

Se puder, remova a chave composta. Pode até deixar os campos que o usuário usa com chaves unique se precisar, mas não use eles como FK. E quando forem usados no outro lado da relação, remova também. Ex:

tabela pessoas, campos id, codigo e nome
talela de movimento, campos id, cod_pessoa, id_pessoa

remova a chave entre movimento e pessoas via código, passe a mesma para os respectivos campos id, e depois remova qualquer referência a movimento.cod_pessoa para movimento.pessoa.codigo

Você pode programar o preenchimento dos campos das chaves, mas garanto que vai ser uma dor de cabeça sem tamanho, tentamos aquie e quando a interação fica complexa (ex: mais de dois níveis de tabela em master/detail), fica muito complicado. Temos optado por preencher os campo ao gravar e o hibernate só conhece os id's como chaves.

Solerman
LightInTheBox - Buy quality products at wholesale price