como saber quando devo usar ManyToMany, ManyToOne, OnToMany, etc?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
como saber quando devo usar ManyToMany, ManyToOne, OnToMany, etc?
nao vejo muito sentindo em um produto ter mais de uma categoria!
O cardinalidade do relacionamento depende do contexto da aplicação.
Suponha uma loja virtual , e um produto como camisa de time ou seleção, e as categorias esporte,futebol,camisa, então podemos ter as seguintes situações:
relacionamento 1x1 (OneToOne) 1 camisa para 1 categoria , caso seja escolhido essa abordagem , 1 produto pode somente se associar com 1 categoria , e o contrário também , então temos:
1 camisa do brasil , 1 categoria esporte dessa forma não podemos reaproveitar a categoria esporte para nenhum outro produto
1 camisa da argentina , 1 categoria esporte argentina, teríamos que criar uma categoria do tipo "esporte" para cada produto.
relacionamento 1xN (OneToMany)
1 camisa poderá se associar com mais de uma categoria, e uma categoria pode se associar com no máximo 1 produto(Nx1 , ManyToOne): 1 camisa brasil , categoria esporte, futebol e camisa
Mas teríamos o mesmo problema citado acima , que não poderíamos reaproveitar as categorias
relacionamento NxN (ManyToMany)
Aqui teríamos as possibilidades de :
1 camisa do brasil , categoria esporte, camisa e futebol 1 camisa argentina , categoria esporte , camisa e futebol