9장. 값 타입
Last update: a year ago by nowwaterReading time: 2 min
🤸♂️목차
- 기본값 타입
- 임베디드 타입(복합 값 타입)
- 값 타입과 불변 객체
- 값 타입의 비교
- 값 타입 컬렉션
- 정리
JPA 의 데이터 타입을 가장 크게 분류하면 엔티티 타입과 값 타입으로 나눌 수 있다.
엔티티 타입 : @Entity로 정의하는 객체
식별자를 통해 지속적으로 추적할 수 있다.
엔티티의 속성 값을 변경하더라도 같은 엔티티이다.
값 타입 : int, Integer, String 처럼 단순히 값으로 사용하는 자바 기본 타입이나 객체를 말한다.
식별자가 없고 숫자나 문자같은 속성만 있으므로 추적할 수 없다.
숫자 값을 100에서 200으로 변경하면 완전히 다른 값으로 대체된다.
비유하자면 엔티티 타입은 살아있는 생물이고, 값 타입은 단순한 수치 정보이다.
값 타입은 다음의 3가지로 나눌 수 있다.
기본값 타입(Basic value type)
자바 기본 타입(예: int, double)
래퍼 클래스(예: Integer)
String
임베디드 타입(복합 값 타입)
- JPA 에서 사용자가 직접 정의한 값 타입
컬렉션 값 타입
- 하나 이상의 값 타입을 저장할 때 사용한다.