인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

작성자 없음

작성자 정보가 삭제된 글입니다.

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

JPA 책의 병합 질문입니다!

작성

·

207

0

영한님 항상 좋은 강의 잘 듣고 있습니다!

강의를 들으면서 JPA 책을 함께 공부하던 중 의문점이 생겼습니다.

 

3장 영속성 관리에서 준영속 상태가 되면 1차 캐시와 쓰기 지연 SQL 저장소에 있는 엔티티의 정보가 제거됩니다.

그런데 준영속 병합 과정에서 merge()를 실행하면 왜 1차 캐시에서 엔티티를 조회하는지 잘 이해가 되지 않습니다.

이미 준영속 상태이거나  비영속 상태이면 1차 캐시에 없다는 것을 예상할 수 있을텐데 굳이 이 과정이 들어간 이유가 있을까요?

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. tnwls2316님

다음을 읽어보시면 이해가 되실거에요.

https://www.inflearn.com/questions/70393

결과적으로 준영속인 경우에도 1차 캐시에 이미 같은 식별자의 엔티티가 있는 경우가 있습니다.

(수정을 통해서 준영속 엔티티가 들어왔는데, 애플리케이션에서 해당 엔티티를 이미 로딩한 경우)

감사합니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기