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

힘내자님의 프로필 이미지
힘내자

작성한 질문수

자바 ORM 표준 JPA 프로그래밍 - 기본편

기본 키 매핑

IDENTITY 전략 관련하여 질문 드립니다.

해결된 질문

작성

·

325

0

해당 전략에서는em.persist()를 하면 바로 쿼리를 날려준다고 하셨는데 그러면

이 하나의 쿼리에 대해서만 db에 flush commit 된다고 생각했는데 맞나요..?

이렇게 생각한 이유는 commit까지 되어야 db에 실제로 반영이 되는것으로 아는데 해당 객체에 대한 기본키 정보를 가져오기 위해서는 제 얕은 지식으로는 반영이 되어야만 알 수 있는것 아닌가 라고 생각해서 입니다.

아니라면 설명해주시면 감사하겠습니다!

 

 

답변 1

1

안녕하세요. L im님, 공식 서포터즈 y2gcoder입니다.

해당 INSERT Query만 바로 DB로 전달되고, pk값을 조회해오는 방식으로 작동합니다. commit이 되지 않아도 pk값은 조회할 수 있습니다. DB에서 commit 하지 않아도 해당 트랜잭션을 시작한 DB 세션(여기서는 저장 요청을 한 사용자의 세션입니다.)에는 데이터가 임시로 저장되어있기 때문입니다. :)
감사합니다.

힘내자님의 프로필 이미지
힘내자

작성한 질문수

질문하기