자바

[자바] JPA Entity 클래스에서 id를 Long 타입으로 해야하는 이유

땅부자몽구스 2021. 7. 25. 21:11

JPA에 대해 찾아 보면서 하나 궁금한 점이 생겼다.

대부분의 예제에서 Entity 클래스의 id 컬럼 변수의 타입은 Long인 것이었다.

왜 int도 long도 아닌 Long 타입을 사용했을까?

 

알아본 결과 아래 2가지 이유로 Long 타입이 id 컬럼 변수의 타입으로 선호된다.

 

1. int, Integer에 비해 표현할 수 있는 숫자의 범위가 넓다.

  • int: -2,147,483,648 ~ 2,147,483,647
  • long: -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

 

2. Primitive 타입은 null이 될 수 없기 때문에, null 값을 정확하게 처리하기 위해서 Wrapper 클래스를 사용한다.