Close
Close full mode
logo만렙 개발자 키우기

9장. 값 타입

Git RepositoryEdit on Github
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 에서 사용자가 직접 정의한 값 타입
  • 컬렉션 값 타입

    • 하나 이상의 값 타입을 저장할 때 사용한다.
🚀 JPA — Previous
(5) 고아 객체
Next — 🚀 JPA
(1) 기본값 타입