[JPA] Value 타입 매핑

Junseo Kim·2020년 3월 21일
1

Value 매핑

Entity타입과 Value타입

  • 식별자의 유무
  • 독립적으로 존재가능 한지 확인

Composite Value타입

위의 그림의 Value타입은 기본적인 Value타입이다.

Composite Value타입은 기본적인 Value타입보다 단위가 조금 더 크다.

흔한 예시로 address가 있다.(address는 엔티티가 아니라는 가정)

Account 안에 속한 데이터 중에 하나로 취급하는 것이다.(Account에 종속적)
즉, Account가 만들어지면, address도 같이 만들어지고, Account가 삭제되면 속해있는 address도 같이 삭제가된다.

Composite Value타입은 @Embeddable 애노테이션을 붙여서 만든다.

Composite Value타입을 사용할때는 @Embedded를 붙여서 사용한다.

실행시키면 Composite Value타입의 속해있는 것들도 다 테이블로 매핑됨을 알 수 있다.

@AttributeOverrides로 각각의 하위 멤버변수들도 각각 오버라이드 할 수 있다.

0개의 댓글