Como fazer One-to-Many no hibernate?  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
ThiagoWorldCoder
JavaEvangelist
[Avatar]

Membro desde: 30/11/2007 10:23:26
Mensagens: 442
Localização: Brazil
Offline

Eu estava seguindo um exemplo de um livro sobre o hibernate e lá estava explicando sobre associação para a própria classe, ou seja, um pai pode ter vários filhos. o mapeamento dele estava assim:


porém, eu queria fazer com que um pedido tivesse vários itens, e a chave extrangeira estaria na tabela de pedido. Ou seja, seria One-to-many, com esse mapeamento eu não consegui entender...

lá na hora de inserir ele estava fazendo assim:


Alguém pode me dar um exemplo melhor, ou me explicar esse?

Grato!

SCJP 6.0 - SUN CERTIFIED JAVA PROGRAMMER
Codificando o mundo para uma vida melhor!!
[MSN]
Gobain
JavaTeenager
[Avatar]

Membro desde: 27/06/2007 13:10:28
Mensagens: 176
Localização: Curitiba
Offline

Olha os 2 lados de uma relação 1:N



[WWW] [MSN] [ICQ]
ThiagoWorldCoder
JavaEvangelist
[Avatar]

Membro desde: 30/11/2007 10:23:26
Mensagens: 442
Localização: Brazil
Offline

Isso aí eu consegui entender, muito obrigado!! Mas como ficaria o meu Set cidades no classe?

private Set<Pedido> pedidos = new HashSet<Pedido>();
public Set<Pedido> getPedidos() {
return pedidos;
}
public void setPedidos(Set<Pedido> pedidos) {
this.pedidos = pedidos;
}
public void addPedidos(Pedido pedido){
pedido.setPedidoItem(this);
pedidos.add(pedido);
}
public Long getIdPedidoItem() {
return idPedidoItem;
}

SCJP 6.0 - SUN CERTIFIED JAVA PROGRAMMER
Codificando o mundo para uma vida melhor!!
[MSN]
ThiagoWorldCoder
JavaEvangelist
[Avatar]

Membro desde: 30/11/2007 10:23:26
Mensagens: 442
Localização: Brazil
Offline

E como seria uma inserção?

SCJP 6.0 - SUN CERTIFIED JAVA PROGRAMMER
Codificando o mundo para uma vida melhor!!
[MSN]
Gobain
JavaTeenager
[Avatar]

Membro desde: 27/06/2007 13:10:28
Mensagens: 176
Localização: Curitiba
Offline

No meu caso, como eu já tenho os Estados salvos, eu carrego o Estado que a cidade faz parte, daí na cidade faço



Isso resolve já

ps.: Não crie mais de um tópico sobre a sua dúvida... mantenha em um só e acompanhe-o... não seja deselegante

This message was edited 1 time. Last update was at 14/12/2007 10:13:44

[WWW] [MSN] [ICQ]
ThiagoWorldCoder
JavaEvangelist
[Avatar]

Membro desde: 30/11/2007 10:23:26
Mensagens: 442
Localização: Brazil
Offline

Desculpe o mau jeito de ter postado outra pergunta, é que eu achei que ninguém ia responder novamente essa minha dúvida.

O mapeamento eu fiz do jeito que você falou, mas eu não entendi como seria feita a inserção.
por exemplo lá no banco deveria ter registrado o mesmo estado duas vezes com o mesmo id mas, cada um apontando para uma cidade diferente não é assim?

como eu escreveria uma inserção, quando eu fosse salvar um estado e logo em seguinda duas cidades pra esse estado?
eu estou procurando eu todos os lugares, sempre mostram o mapeamento como é feito e não mostram a inserção direito como seria!!
por favor me ajudem!! Eu não sei mais o que fazer...

grato pela atenção!

SCJP 6.0 - SUN CERTIFIED JAVA PROGRAMMER
Codificando o mundo para uma vida melhor!!
[MSN]
Gobain
JavaTeenager
[Avatar]

Membro desde: 27/06/2007 13:10:28
Mensagens: 176
Localização: Curitiba
Offline

Quem contém a chave estrangeira é a cidade, e não o estado. Não é o estado q faz parte da cidade, e sim o contrário. Com isso eu parto de um princípio que temos um número fixo de estados no país (lógico não?), e não vamos alterá-los o tempo todo ou gravar novos estados constantemente, certo? Então para gravar uma nova cidade, eu faço assim:



Tae... é assim q faço qd preciso gravar uma nova cidade. Mas mesmo assim, se vc for salvar um novo estado, pode ser feito assim:



Acho q isso da alguma luz, certo?

This message was edited 2 times. Last update was at 14/12/2007 11:52:22

[WWW] [MSN] [ICQ]
ThiagoWorldCoder
JavaEvangelist
[Avatar]

Membro desde: 30/11/2007 10:23:26
Mensagens: 442
Localização: Brazil
Offline

Valeu pela ajuda, se com essa ajuda eu não conseguir posso parar!!!
brigadão!

SCJP 6.0 - SUN CERTIFIED JAVA PROGRAMMER
Codificando o mundo para uma vida melhor!!
[MSN]
Gobain
JavaTeenager
[Avatar]

Membro desde: 27/06/2007 13:10:28
Mensagens: 176
Localização: Curitiba
Offline

Opa, tinha um errinho ali q eu vi agora, mas já corrigi... tava sem o save estado
[WWW] [MSN] [ICQ]
felipe.sodre
JavaChild
[Avatar]

Membro desde: 18/09/2008 14:57:10
Mensagens: 115
Offline

Estou com o mesmo erro, alguem poderia me ajudar?

http://www.guj.com.br/posts/list/0/209148.java
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team