인프런 커뮤니티 질문&답변

강민성님의 프로필 이미지
강민성

작성한 질문수

실전! 스프링 데이터 JPA

예제 도메인 모델과 동작확인

강사님은 member_id가 3부터 시작했는데

작성

·

226

·

수정됨

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]
저는 member_id가 1 부터 시작했는데 혹시 이유를 알 수 있을까요? 그리고 왜 member_id 가3 부터 시작하는 이유가 궁금합니다

답변 1

0

안녕하세요. 강민성님, 공식 서포터즈 OMG입니다.

id는 다음 코드의 team과 member의영속화 순서에 따라

image

id=1과 id=2 는 Team에 부여되었고, id=3부터 Member에 할당되었습니다.

강의에서는 자동 키 생성 전략을 명시하지 않아 h2의 시퀀스 방식이 적용되었고, 동일한 시퀀스를 공유하여 사용하였기 때문에 team과 member의 채번이 되었습니다.

image

member가 1부터 시작하는지에 대해서는 위에 첨부드린 코드와 같이 team을 먼저 persist하고, member를 영속하신게 맞는지 확인이 필요할 것 같습니다.

순서대로 하신게 맞다면 @GeneratedValue를 명시적으로 생성전략을 지정하여 그 부분에서 차이가 발생하였거나, 스프링부트 버전이 올라감에 따라 발생한 차이일수도 있을 것 같습니다.

영속화 순서와 @GeneratedValue어노테이션 사용 그리고 스프링부트 버전을 전달해주시면 관련하여 더 확인해 볼 수 있을 것 같아요.

감사합니다.

강민성님의 프로필 이미지
강민성

작성한 질문수

질문하기