본문 바로가기
Java/JPA

[SpringBoot_JPA_1] @Embeddable, @Embedded

by HJ0216 2023. 5. 21.

이 글은 김영한의 [실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발] 수강하며 정리한 글입니다.

 

 

🟦 기본 환경: IDE: IntelliJ, Language: Java

 

 

@Embeddable, @Embedded: 새로운 값 타입을 직접 정의하여 사용 

@Embeddable: 값 타입을 정의하는 곳에 기재

* 기본 생성자 필수

 

@Embedded: 값 타입을 사용하는 곳에 기재

 

⭐ 장점

- Embedded 타입을 사용하기 전과 후에 매핑하는 테이블이 같음

- 해당 값 타입만 사용하는 의미 있는 메소드를 만들 수 있음

 

+ @AttributeOverride: 중복된 Embedded 타입 사용 시, 새로운 Column name 지정

 

 

 

참고 자료

 

JPA - Entity의 가독성을 높이자(@Embedded, @Embeddable, @AttributeOverride 사용법)

@Embedded, @AttributeOverride JPA에서는 Entity안의 값을 조금 더 의미있는 값으로 표현하기 위해 응집된 하나의 객체로 데이터를 표현합니다. 이번 포스팅에서는 이 처럼 JPA의 Entity를 조금 더 확실한 의

galid1.tistory.com