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

por que nao usamos o OnetoMany na classe categoria ? se na classe produtos usamos ManyToOne?

por que nao usamos o OnetoMany na classe categoria ? se na classe produtos usamos ManyToOne?

2 respostas
solução!

Olá, João! Tudo bem? Espero que sim!

O uso de @OneToMany ou @ManyToOne depende da perspectiva que estamos analisando. No caso do exemplo da aula, estamos olhando sob a perspectiva da classe Produto, onde um produto pertence a uma categoria, mas uma categoria pode ter vários produtos. Assim, usamos @ManyToOne na classe Produto para representar essa relação.

No entanto, se estivéssemos na classe Categoria e quiséssemos representar todos os produtos que pertencem a uma categoria específica, aí sim usaríamos @OneToMany. Isso criaria uma lista de produtos na classe Categoria.

Por exemplo, na classe Categoria teríamos algo assim:

@OneToMany(mappedBy = "categoria")
private List<Produto> produtos;

O mappedBy é usado para indicar o campo que está sendo usado para o mapeamento do lado "muitos" (neste caso, o campo categoria na classe Produto).

No entanto, isso não foi feito na aula porque nem sempre queremos carregar todos os produtos de uma categoria quando carregamos a categoria. Isso pode ser ineficiente se tivermos muitos produtos para uma categoria.

Caso tenha dúvidas, fico à disposição!

Espero ter ajudado.

Abraços e bons estudos!

muito bem explicado, parabéns

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software