Oi, pessoal. Minha dúvida é o que vai facilitar fazer associações entre classes?Seja one-to-one, many-to-many, many-to-one?Quais as vantagens, o que vem a contribuir?
Associações do Hibernate pra que?
11 Respostas
Estude orientação a objetos que você vai entender.
Ou então começe a fazer join de tabelas manualmente, é maravilhoso :lol:
Porque uma Pessoa tem muitos Documentos? Porque um Curso tem muitos Alunos? Porque uma Nota tem vários Itens?
Trabalhando com Hibernate você se concentra em objetos, não em tabelas.
Toda a parte suja, feia e malvada do SQL deve ficar a cargo do framework, incluindo joins (mas se você precisar mesmo utilziar algum recurso SQL, ele te dá possibilidade).
Nunca faça joins manualmente, utilize os mapeamentos para dizer ao framework como suas classes se relacionam.
Eu já vi muita gente fazendo join em HSQL 
Eu já vi muita gente fazendo join em HSQL :(
Mas o join em HQL é necessário Phillip, pra dizer que você quer carregar as dependências com a classe (quando você tá usando lazy-load).
Pra isso tem criteria!
Ok, não era exatamente “join”, mas não sei como chamar isso:
class A{
private int codigo;
}
class B{
private int codigoDeA;
public void setCodigoDeA(int codigo){
this.codigoDeA=codigo;
}
}
Mapeamento Relacional-Objeto? 
Só uso criteria quando não dá pra usar uma named query em HQL :mrgreen:
<blockquote><div class="quote-author">pcalcado:</div> class A{
private int codigo;
}
class B{
private int codigoDeA;
public void setCodigoDeA(int codigo){
this.codigoDeA=codigo;
}
}
Urgh! :oops:
O pior é que eu vi um bixo desses passeando por aqui dia desses…
Ok, não era exatamente “join”, mas não sei como chamar isso:class A{ private int codigo; } class B{ private int codigoDeA; public void setCodigoDeA(int codigo){ this.codigoDeA=codigo; } }Mapeamento Relacional-Objeto? :D
Eu vi isso na minha sala da faculdade, quando estavamos aprendendo UML e deveria criar alguns diagramas de classes.
Foi dificil para o professor explicar para as pessoas que em OO os relacionamentos não funcionam assim
Fazer join também é útil na hora de fazer uma busca dentro de uma collection qualquer do objeto.
select pessoa from pacote.Pessoa pessoa inner join pessoa.Documentos documento where documento.Numero = '12345'
[]'s
Rodrigo C. A.
Eu vi isso na minha sala da faculdade, quando estavamos aprendendo UML e deveria criar alguns diagramas de classes.
Foi dificil para o professor explicar para as pessoas que em OO os relacionamentos não funcionam assim
É nada, difícil foi pra eu entender que no mundo relacional as coisas se “juntam” com chaves.
É nada, difícil foi pra eu entender que no mundo relacional as coisas se “juntam” com chaves.
Admirável mundo novo…