1
resposta

Joined - porque não tem chave estrangeira?

se para saber produto - livro deveria fazer join, pq ali no query do hibernate ele nao deu uma chave estrangeira nas classes para se comunicarem? como uma e outra sabe quem são, que sao a mesma instância?

1 resposta

Olá Jade,

O Hibernate, por padrão, utiliza as anotações nas classes para mapear as relações entre as entidades, e não é necessário especificar explicitamente a chave estrangeira.

O Hibernate utiliza o conceito de "mapeamento objeto-relacional", que mapeia as classes Java para tabelas no banco de dados e vice-versa. Dessa forma, as relações entre as entidades são estabelecidas por meio das anotações nas classes.

No caso específico da sua pergunta, a relação entre as entidades é estabelecida por meio das anotações nas classes, e o Hibernate utiliza essas informações para realizar o "join" corretamente.

Espero ter ajudado e bons estudos!