안녕하십니까 부트책을 읽고 실습후 프로젝트를 진행하고 있습니다.
그래서 테이블 설계와 서비스, dto클래스 관련 몇가지 궁금증이 있습니다.
-사용자에게 선호제품 비선호제품을 복수형으로 입력받습니다.
ex) 선호제품: 삼성티비, 엘지티비
비선호제품: 애플, 샤오미
이렇게 한번에 입력을 받은 후 선호제품테이블과 비선호제품 테이블을 만들어서
유저명, 선호제품, 제품이미지 테이블과 유저명 비선호제품 제품이미지
이렇게 두 개의 테이블을 만든 후 처리를 하는데 중복 데이터가 존재해서 DB정규화를 진행해야하는지 궁금증이 생겼습니다.
유저명 선호제품 이미지링크
-aaaa 삼성 링크~~
-aaaa 엘지 링크~~
-bbb 엘지 링크~~
-bbb 애플 링크~~~
이런식으로 엘지와 링크가 중복이 발생합니다. 비선호 테이블에도 저것과 거의 같은 내용이 또다시 들어갑니다.
그래서 제품id, 제품명, 이미지 가 있는 제품테이블과
유저명 제품id 선호여부 가 존재하는 선호제품 테이블로 분할을 진행하려 했는데 이렇게 분할해도 유저가 다르면 제품id와 선호여부가 중복이 발생합니다.
이 테이블의 정규화를 진행해야하는지, 해야한다면 어떤식으로 해야하는지 조언 좀 구할 수 있을까요..
추가로 선호제품, 비선호제품으로 진행한다면 내용이 비슷하더라도 클래스는 전부 새로 만들어서 처리하는지(선호제품saveDto와 비선호제품saveDto...), 아니면 한 클래스안에서 같이 처리하는지 궁금합니다.