inflearn logo
강의

講義

知識共有

本当! Spring BootとJPAの活用1 - Webアプリケーション開発

エンティティ設計時の注意点

id값을 Long 타입으로 지정하는 이유가 따로 있나요??

解決済みの質問

3385

dmdmk

投稿した質問数 69

1

강의를 보면서 계속 궁금했던 건데 

id 값을 int가 아닌 Long 타입으로 하는 이유가 뭔지 궁금합니다!



spring java spring-boot JPA 웹앱

回答 2

4

David

안녕하세요. 김동민님, 공식 서포터즈 David입니다.
.

int, long이 아닌 Wrapper Class(Long)를 쓰는 이유는 null을 사용할 수 있기 때문입니다. primitive type은 기본값이 0이 되는데, id가 없을 때를 나타낼 수 없습니다.

.

Long과 Integer 중에서 Long을 쓰는 이유는 표현범위 때문입니다.

Long이 Integer보다 월등히 많은 수를 표현할 수 있기 때문에 Long을 사용합니다.

.

물론 Integer의 범위로도 충분하다면 Integer를 사용하셔도 무방합니다.

.
감사합니다.

0

dmdmk

오 값의 범위라고는 생각하고 있었는데 null때문인 건 생각 못했네요ㅎㅎ

Optional을 사용하기도 더 좋겠네요 

OrderServiceTest 상문주문 테스트 시 update 쿼리 문의

0

18

1

sdk 설정 오류

0

59

2

오탈자 - @Transactional

0

57

1

src/test/resources 테스트 경로 문제

0

52

1

상품 등록후 H2 db 출력 순서 바꿀 수 있나요?

0

67

1

MemberRepositoryTest 실행오류

0

83

1

boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)

1

186

2

강의 마지막 QueryDSL 사용 부분 질문있습니다

1

146

2

클라이언트에서 isbn과 author 수정 요청을 한 경우에 대해 질문드립니다.

0

53

1

도메인 모델 패턴 vs 트랜잭션 스크립트 패턴

0

76

1

기본 생성자

0

62

1

h2 DB 연결시 jdbc url 변경 이유가 궁금합니다.

0

103

1

멤버서비스테스트 부분에서 막힙니다.

0

168

4

실무에서도 EntityManager를 이용해서 많이 작업하는 편일까요?

0

118

1

초반에 h2 다운로드 과정 꼭 필요한가요?

0

121

2

자신 필드에도 get으로 접근하는 이유가 있을까요?

0

115

1

24분 27초 연관관계 편의 메서드 위치

0

114

1

단건 주문만 가능하게 한건 의도한 부분이신가요?

0

112

2

빌드 툴, Gradle

0

61

1

h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다

0

78

2

Repository에서 EntityManager 주입 방식 차이

0

91

1

롬복과 사용자 정의 setter 메서드

0

74

1

주문 목록 조회 fetch join 질문드립니다

0

84

1

dirty checking 질문드립니다.

0

84

1