EJB3 - Herança  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
fre_d
Java Ninja

Membro desde: 13/06/2007 17:42:02
Mensagens: 259
Localização: Lages - SC
Offline

Pessoal estou tentando implementar herança da seguinte forma:

Tabelas

Pessoa (pk= id_pessoa)
PessoaFisica(pk = id_pessoa_fisica, fk=id_pessoa)

Existe alguma forma de implementar isso ? Como ficariam as anotações das classe e das chaves primarias ?

OBS: Eu não gostaria que a chave primaria da tabela pessoa_fisica fosse composta pela chave primaria da tabela pessoa

Valeu
rp.guimaraes
JavaBaby
[Avatar]

Membro desde: 14/11/2006 19:10:31
Mensagens: 97
Offline

Na realidade não veja pq vc está criando uma novo id em pessoa_fisica, basta vc aproveitar o id de pessoa e pronto.

Segue um exemplo de como vc pode implementar herança:

No banco de dados tabela Pessoa:


No banco tabela Pessoa_Fisica:


Classe pessoa:


Classe Pessoa_Fisica:
fre_d
Java Ninja

Membro desde: 13/06/2007 17:42:02
Mensagens: 259
Localização: Lages - SC
Offline

Meu modelo E/R recebe chaves "burras" em todas as tabelas, não gostaria de alterar. Acho que vou fazer por agregação.

Outra dúvida:

Gostaria de fazer outro tipo de Herança:

PessoaLigth(tabela=pessoa, alguns atributos)
Pessoa(tabela=pessoa, herda PessoaLigth, mais atributos e relacionamentos)

Existe possibilidade de fazer isso ? Usando apenas uma tabela ?

Valeu
fre_d
Java Ninja

Membro desde: 13/06/2007 17:42:02
Mensagens: 259
Localização: Lages - SC
Offline

up
thiago_santos
Thread.start()
[Avatar]

Membro desde: 28/12/2006 11:02:18
Mensagens: 41
Offline

Olá Pessoal... Estou com um problemão no relacionamento 1xN. O sistema que eu estou fazendo tem o entity principal Agent e o entity ContactAgent. O Agent tem uma lista de ContactAgent, no entity do ContactAgent eu quero que apareça o campo AGENTUID(chave primária do entity Agent). Então no sistema quando eu vou salvar o Agent com seus ContactAgent`s ele salva quase tudo certo. No banco os registros são salvos só que o campo AGENTUID na tabela ContactAgent fica nulo. E eu não acho a solução, encontrei bem poucas pessoas com esse problema. Eu uso como banco de dados, o MySql. Vejam os códigos abaixo:

Agent, parte do código onde tem os relacionamentos...


ContactAgent, parte do código onde tem os relacionamentos...


Classe que persist os registros...


Alguém aí já passou por isso?
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team