Springboot

현재 진행 중인 프로젝트에서 구독하기 API구현하기 (1)연관관계/모델만들기

25G 2021. 12. 17. 11:39

연관관계

 

먼저 구독하기 API를 구현함에 앞서서 연관관계에 대해서 분석을 해야 한다.

기본적인 공식 

제1 정규형인 원자성만 지켜지면 웬만해선 다 해결된다.

- 1 : N의 연관관계에서는 폴인키(FK)를 Many가 가진다. 

- N : N 의 관계가 됐을 때는 테이블을 쪼개서 중간 테이블을 만들어 관리한다.

     -그리고 이 중간 테이블과의 관계는 중간 테이블이 1, 연관 테이블이 N이 된다.

구독하기의 연관관계

구독하기는 유저끼리 서로가 해주는 것이기 때문에 N:N의 연관관계가 나온다.

그렇기 때문에 위 공식에 맞게 중간 테이블을 만들어서 관리를 해준다.


모델 만들기

 

 

@Table을 사용해서 fromUser와 toUser가 구독을 했을 때 한 번만 db에 등록되도록 Unique제약조건을 걸었다