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

[Dúvida] Por que não indicar a bidirecionalidade na classe Produto?

Olá pessoal. Tudo bem?

Minha dúvida é a seguinte: Tenho um relacionamento de ManyToMany entre os produtos e os pedidos e por isso tenho aquela tabela intermediária de itens_pedido. Até ai ok. Durante o desenvolvimento do código, criamos todas as classes (Entitys) que representam o banco de dados e na classe Pedido, foi feito o mapeamento do relacionamento bidirecional entre Pedido e ItemPedido (pois um pedido é composto por vários itens, logo, vou ter que ter na classe Pedido uma lista que desses itens). Minha dúvida é por que esse mapeamento não foi feito na classe Produto? (eu até entendi que eu não vou ter uma lista de itens na classe Produto, mas não tenho que indicar a bidirecionalidade do relacionamento na classe Produto?). Poderiam me ajudar a clarear minhas ideias? rs

2 respostas
solução!

Olá João! Tudo bem?

Na verdade, a bidirecionalidade não é indicada na classe Produto porque, como você mencionou, não há a necessidade de ter uma lista de itens na classe Produto.

A bidirecionalidade é útil quando você precisa acessar os objetos relacionados em ambas as direções. No seu caso, na classe Pedido, faz sentido ter uma lista de itens, pois um pedido é composto por vários itens. Porém, na classe Produto, não é necessário ter uma lista de pedidos, pois isso não faz parte da lógica do seu sistema.

Ao não indicar a bidirecionalidade na classe Produto, você está simplificando o seu código e evitando a criação de um relacionamento desnecessário. Isso também pode melhorar a performance do seu sistema, já que não haverá a necessidade de carregar todos os pedidos relacionados a um produto quando você estiver trabalhando apenas com a classe Produto.

Espero ter ajudado e bons estudos!

Boa tarde! Era isso que eu imaginava mesmo, mas queria confirmar! Muito obrigado pelos esclarecimentos!!!