Hibernate JPA uma coluna equivale a varias colunas de outra tabela
6 respostas
Lukaz
Olá!
Uso Hibernate com annotations e estou com um problema para criar um relacionamento entre tabelas, 4 colunas de uma tabela concatenadas formam a chave da outra, gostaria de estabelecer o relacionamento no mapeamento para ficar simples de obter os dados. Alguém conhece uma forma para relacionar a tabelas como se fosse uma concatenação de colunas?
Não existe tal funcionalidade. Se vc está concatenando dados p/ em uma coluna vc está violando a primeira forma normal. Sua modelagem está errada! Reveja ela q vc provavelmente vai conseguir solucionar o seu problema.
Lukaz
Um fato importante, essa modelagem não é minha e sim de uma estrutura de banco de dados legado, não posso fazer alterações na estrutura do banco, pois o sistema antigo precisa continuar operando enquanto os novos módulos vão sendo criados e testados. Acho que terei que criar a query que preenche esse objeto por inteiro, para resolver esse problema.
dev.rafael
Talvez um EntityListener possa ajuda-lo.
E
everjava
da uma olhada nos conceitos de:
@SecondaryTable @Embeddable e @EmbeddedId
talvez ajude…
dev.rafael
Isso não ajuda. Não se trata de mapear duas tabelas em uma, mas de transformar varias colunas em uma através da concatenação de seus valores. Esse processo tem q ser feito manualmente. A melhor coisa q pode ser feita é despedir o infeliz q fez essa modelagem ridícula. Isso é trabalho de preguiçoso, e o mais f** é outro cara ter q pagar por isso!!
Lukaz
Eu sei, a modelagem desse banco é uma droga msm, porém como o sistema antigo não era criterioso com as relações entre as tabelas isso não era problema, pois tudo se resolvia em enormes trechos de SQL. No fim das contas teremos q remodelar, mas dai é o patrão que dah o aval.