
다양한 연관관계에 대해 알아봅시다.연관관계를 매핑할 때 고려해야 할 사항이 3가지가 있습니다. 방향(단방향, 양방향)연관관계의 주인다중성앞서서 방향과 연관관계의 주인에 대해 다뤘음으로 바로 다중성에 대해 알아보도록 하겠습니다. 1. 다중성이란?JPA는 객체를 테이블에 매핑하기 위해서 다양한 어노테이션을 활용하는데, 이 중에서 다중성과 관련있는 어노테이션은 아래와 같습니다. @ManyToOne: 다대일@OneToMany: 일대다@OneToOne: 일대일@ManyToMany: 다대다다중성은 각각 자신의 속성에 대칭성을 가지는데, 예를 들어 Team -> Member 가 일대다일 경우 Memebr->Team은 다대일입니다. 2. @ManyToOne(다대일)단방향 [N:1]가장 많이 사용하는 연관관계로, ..

이전 포스팅에서 단방향 연관관계에 대해서 다룬 적이 있습니다. 이번에는 양방향 연관관계에 대해 다뤄보도록 하겠습니다. 1. 연관관계 매핑회원과 팀이 있다고 가정하면 회원은 특정 팀에 속할 수 있고, 팀은 여러 회원을 가질 수 있습니다. 이 둘의 관계를 객체와 테이블로 나타내보도록 하겠습니다.단방향 연관관계와는 다르게 양방향 연관관계를 위해 Team에 필드를 추가했습니다. 테이블 연관관계는 단방향 연관관계 때와 동일합니다. 테이블 연관관계에서는 FK로 연관관계를 맺기 때문에 항상 양방향 관계라고 볼 수 있습니다. 👀 객체 연관관계 VS 테이블 연관관계테이블에서는 외래 키로 테이블들과의 연관관계를 맺기 때문에 항상 양방향 관계입니다. 객체는 위 예시처럼 양방향으로 만들고 싶다면 반대 객체에도 필드..
- JPA
- mappedBy
- @joincolumn
- 조인 전략
- @Entity
- @Cacheable
- @TransactionalEventListener
- N + 1
- @MappedSuperclass
- 1차 캐시
- onetoone
- 비동기
- 인메모리 db
- 연관관계
- @Id
- 단일 테이블 전략
- 메일
- Redis
- @ManyToOne
- 준영속
- 비영속
- @OneToMany
- @Table
- 영속성 컨텍스트
- 즉시 로딩
- 변경감지
- @GeneratedValue
- 최적화
- 엔티티 매니저
- 스키마 자동 생성