Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Hibernate faz select sem join

Eu estava praticando o que foi passado na aula e vi que ao fazer um select simples com JPQL "select c from Conta c" na entidade Conta já é realizado dois selects, um para conta e um para movimentacoes pois é o relacionamento entre conta e movimentação e eu consigo as informações da movimentação. No caso o hibernate tem esse comportamento de forma automática?

Pois para conseguir as informações da movimentação deveria ser feito um join senão no select o resultado seria o id de movimentação somente.

3 respostas

Oi Leandro, tudo bem ?

Vai depender do comportamento que você pediu, pois a busca da lista de movimentações pode ser eager ou lazy.

Minha dúvida é que se eu escrevo a query "Select c from Conta c" retorna os mesmos resultados de "Select c from Conta c Join c.movimentacao". No caso isso é relacionado ao Lazy? Porque uma consulta a tabela de conta sem Join não se espera que retorne nada de movimentação.

solução!

Exatamente, se você deixar lazy ele não busca e no eager faz a busca.