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

Não entendi a cardinalidade @ManyToOne...

@Entity
@Table(name="itens_pedido")
public class ItemPedido {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id; 

    private BigDecimal precoUnitario;

    private int quantidade;

    @ManyToOne //Muitos itens (Many) para um pedido (One) ok!
    private Pedido pedido;
    @ManyToOne //Muitos itens (Many) para um produto (one) ?
    private Produto produto;

}

Outra dúvida pessoal: Não ficou claro o motivo do atributo produto da classe ItemPedido ser da cardinalidade @ManyToOne. Eu traduzi da seguinte forma: Muitos itens (Many) para um produto (one)...

Ainda assim não entendi essa ligação de itemPedido com Produtos. Na minha cabeça, itemPedido e Produto são a "mesma coisa", tipo não tem necessidade de existir essa distinção.

Alguém por favor pode clarificar essa ideia para mim?

2 respostas
solução!

Oi Camila, tudo bem?

Muitos items (classe ItemPedido) podem estar relacionados ao mesmo Pedido (ManyToOne).

O relacionamento de ItemPedido para Produto fica mais simples se pensar no sentido contrário: 1 produto pode estar relacionado a muitos ItemPedidos diferentes. Por ex, dois pedidos com o mesmo produto. Esse mapeamento é mais para você conseguir através da classe ItemPedido acessar o Produto daquele ItemPedido.

@ManyToOne //Muitos itens (Many) para um produto (one) ?
    private Produto produto;

Hum... copiei.

Esse mapeamento é mais para você conseguir através da classe ItemPedido acessar o Produto daquele ItemPedido.