Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Algumas Dúvidas

Dúvida 1 - Entidades Categoria e Produtos Se eu quiser saber todos os produtos que estão em uma determinada categoria, o certo seria criar uma lista de produtos na classe da categoria e a cardinalidade seria OneToMany?

Dúvida 2 - Entidades Cliente e Pedido Do mesmo jeito no relacionamento entre cliente e pedido, caso eu quisesse saber todos os pedidos feitos por um cliente, deveria ser criada uma lista de pedidos na classe Cliente com a cardinalidade OneToMany?

Dúvida 3 - Relacionamento Bidirecional Se eu tiver um relacionamento bidirecional entre a EntidadeX - OneToMany e EntidadeY - ManyToOne , a entidade ToMany SEMPRE receberá o mappedBy com o nome do atributo do outro lado do relacionamento? ou seja, o nome do atributo que tem cardinalidade ManyToOne (EntidadeY).

1 resposta
solução!

Oi Ayrton!

Dúvidas 1 e 2: Você pode fazer isso com uma consulta mesmo, sem precisar mapear um novo atributo nas entidades:

public List<Produto> buscarProdutosDaCategoria(Categoria categoria) {
    return em.createQuery("SELECT p FROM Produto p WHERE p.categoria = :c", Produto.class)
    .setParameter("c", categoria)
    .getResultList();
}

`java public List buscarPedidosDoCliente(Cliente cliente) { return em.createQuery("SELECT p FROM Pedido p WHERE p.cliente = :c", Pedido.class) .setParameter("c", cliente) .getResultList(); }

Dúvida 3: Isso mesmo.