IdClass

    2023.11.23 TIL - JPA 복합키 사용하기 (Feat. 팔로우 API)

    오늘 한 것 팀 프로젝트 팀 프로젝트 팀프로젝트 필수 요구사항들을 끝내고 추가 요구사항중 팔로우 기능을 구현하기로 했다. 기능을 구현하기전 엔티티 설계와 ERD 를 작성했다. 팔로우 엔티티 설계 팔로우는 팔로우를 받는 팔로워_id와 팔로우를하는 팔로잉_id를 갖고있다. entity면 2개의 회원 엔티티이다. 처음에는 이를 회원과 각각 ManyToOne 관계를 맺었는데, 다음과 같은 이유로 복합키를 가진 엔티티로 변경했다. 1. 팔로우 관계가 팔로우 테이블과 회원 테이블 의 연관이 되어있는게 맞는가? 예를들어 게시판과 게시판 타입의 관계를 생각해보면 게시판의 타입을 수정할 때마다 게시판 타입이 변경될 수 있다. 게시판의 상태에 따라 게시판 타입도 변경되는 것이다. 그러므로 둘은 서로 관계를 가지고있다. ..