| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 07/11/2007 16:58:29
|
spranta
JavaEvangelist
![[Avatar]](/images/avatar/e3ca0449fa2ea7701a7ac53fb719c51a.png)
Membro desde: 19/01/2004 17:32:48
Mensagens: 305
Localização: Belo Horizonte
Offline
|
Pessoal, estou utilizando JPA em um projeto daqui, quando tenho uma classe (Turma por exemplo) que faz um relacionamento com uma outra tabela de 'n para n', ou seja, tenho uma associação de chave composto dupla então costumo fazer o seguinte no meu POJO de Turma:
Desta forma, no meu POJO de Turma eu consiguo buscar todos os MATERIAIS associados a ela.
Isto funciona perfeitamente, no entanto, minha necessidade agora está em fazer um relacionamento de turma com uma outra tabela associativa que já possui uma chave composta dupla, gerando portanto uma chave composta com tres chaves primarias (todas elas foreing key), ou seja, de um lado eu tenho minha tabela de Turma com sua chave primaria, de outro lado eu tenho um tabela associativa que reune as chaves de Disciplina e Professor (atraves desta tabela eu consiguo saber para quais disciplinas o professor leciona), e dai eu preciso de ter uma Tabela de relacionamento composta por tres chaves primarias, pois eu preciso saber em uma data turma quais professores dão aula, mas para qual disciplina, entenderam?
Resumindo, preciso em Turma referenciar via JPA uma tabela associativa cuja chave composta possui tres campos, como faço isso?
|
"Não somos apenas ignorantes. Somos ignorantes sobre o quão ignorantes somos."
(Charles Darwin) |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/11/2007 07:58:59
|
AvilaCS
Thread.start()
![[Avatar]](/images/avatar/6b79fc67a437b9cc901233dd856aa061.jpg)
Membro desde: 03/02/2007 18:28:12
Mensagens: 43
Localização: São Paulo
Offline
|
Veja o exemplo:
|
____________________________________
Jossemar Ávila de Morais
jossemar.avila@siriussoftware.com.br
Sírius Software
Visite: www.siriussoftware.com.br
Insista, persista e nunca desista pois um dia você conquista. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/11/2007 09:00:56
|
frazzato
Thread.start()
Membro desde: 23/08/2007 09:28:41
Mensagens: 44
Localização: São José do Rio Preto
Offline
|
Tipo se você relacionar a Turma com a Disciplina não fica mais facil depois a implementação, porque a partir dessa tabela onde você vai ter a chave composta(Turma, Disciplina) você chega ate Disciplinas e ate o/s Professores que ministram ela... é só uma sugestão
This message was edited 1 time. Last update was at 08/11/2007 09:01:21
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/11/2007 10:14:12
|
spranta
JavaEvangelist
![[Avatar]](/images/avatar/e3ca0449fa2ea7701a7ac53fb719c51a.png)
Membro desde: 19/01/2004 17:32:48
Mensagens: 305
Localização: Belo Horizonte
Offline
|
Frazzato, o problema é que a disciplina pode estar associada a varios professores, ou seja, um professor está apto a coordenar varias disciplinas (relacionamento n x n), dai que uma turma pode ter varios professores, cada um para uma disciplina (n x n), só que eu preciso saber para cada disciplina qual o professor selecionado, visto que em uma dada disciplina eu tenho varios professores a disposição, ou seja, eu preciso dai ter uma tabela com chave composta do id da Turma, da Disciplina e do Professor. Ao meu ver, eu preciso criar uma classe que represente este relacionamento né, ou será possivel representar isso em JPA através de um Set sem criar uma classe, essa é ainda a minha dúvida?
A sugestão do Avila ao meu ver não me atende, visto que a Cidade que ele representou não é uma tabela de relacionamento entre entidades, mas sim uma entidade de dominio mesmo.
|
"Não somos apenas ignorantes. Somos ignorantes sobre o quão ignorantes somos."
(Charles Darwin) |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/11/2007 12:21:15
|
Ricardo Moura
JavaChild
Membro desde: 23/04/2004 11:56:16
Mensagens: 125
Offline
|
Pessoal, o eu e o Spranta trabalhamos juntos e ainda não tivemos sucesso na implementação de chave composta com Foreign Key.
Achei um artigo dando um exemplo e "na teoria" parece funcionar, mas a "lei de murf" insiste em prevalecer!!
O erro que está ocorrendo agora é daqueles "fatos inexplicáveis da vida de um programador":
Unknown column 'disciplina_co_seq_disciplina' in 'field list'
O Hibernate deveria montar: disciplina.co_seq_disciplina . Alguém já passou por isso? Como isso pode ocorrer?
Algum filho de DEUS poderia nos ajudar!!
Segue abaixo a nossa implementação:
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 24/10/2008 12:59:27
|
alves.Felipe
GUJ Ranger
![[Avatar]](/images/avatar/1d225d267a78f71ea5abb2364f4e91c4.jpg)
Membro desde: 21/01/2008 13:45:56
Mensagens: 766
Localização: Curitiba - Pr
Offline
|
Conseguiram resolver isso??
se conseguiram, deem umas dicas ai... estou na mesma situação...
abraco
|
Felipe Alves |
|
|
 |
|
|
|
|