▲ 테이블 생성 확인과 mappedBy
페이지 정보
본문
@OneToMany는 기본적으로 각 엔티티에 해당하는 테이블을 독립적으로 생성하고 중간에 매핑해 주는 테이블이 생성된다.
이를 확인하기 위해 기존의 board, reply 테이블을 삭제
프로젝트를 실행
ERD로 표현해서 살펴보면 board와 board_image 테이블 중간에 board_image_set이라는 테이블이 @OneToMany를 처리하기 위해서 생성된 것을 확인할 수 있다.
위와 같이 엔티티 테이블 사이에 생성되는 테이블을 흔히 '매핑 테이블'이라고 하는데 매핑 테이블을 생성하지 않는 방법으로
첫 번째는 단방향으로 @OneToMany를 이용하는 경우 @JoinColumn을 이용하거나,
두 번째는 mappedBy라는 속성을 이용하는 방법이 있다.
mappedBy의 경우 Board와 BoardImage가 서로 참조를 유지하는 양방향 참조 상황에서 사용하는데 mappedBy는 '어떤 엔티티의 속성으로 매핑되는지'를 의미한다.
생성된 4개의 테이블을 삭제
- 이전글Board ( @OneToMany 적용 ) 24.06.27
- 다음글Board ( 연관 관계 mappedBy 수정 ) 24.06.27
댓글목록
등록된 댓글이 없습니다.