작성한 질문수
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
변경 감지와 병합(merge)
해결된 질문
작성
·
245
0
순서가 플러시를 먼저 하고 커밋을 하는 건가요?
플러시 할 때 영속성 컨텍스트를 비우지 않는다는데 SQL 저장소는 쿼리가 나가면서 비워지는 것 아닌가요?
답변 1
안녕하세요, binni0515 님. 공식 서포터즈 y2gcoder 입니다.(출처 - 영한님의 JPA 기본편 pdf 중 3. 영속성 관리, p.21 )
위의 내용을 보시면 flush 하면서 쓰기 지연 SQL 저장소에 있던 SQL들을 날리고, 그 후에 DB에 commit 을 하는 것을 알 수 있습니다.커밋 요청을 하면 먼저 플러시가 발생하고 그 후에 커밋을 해준다고 생각하시면 될 것 같습니다!
JPA 강의 감사합니다.
답변감사합니다! flush=SQL저장소의 SQL을 날리는 것
이라고 이해해도 될까요? 그리고 이때 SQL을 날릴 때 DB에 반영이 되는 것인지, 이후 DB에 commit 할 때 비로소 DB에 반영이 되는 것인지 궁금합니다. ( em.flush() 만 호출 했을 때 DB에 반영이 되는 것인지. )
commit 후에 반영됩니다 :)
답변감사합니다! flush=SQL저장소의 SQL을 날리는 것
이라고 이해해도 될까요? 그리고 이때 SQL을 날릴 때 DB에 반영이 되는 것인지, 이후 DB에 commit 할 때 비로소 DB에 반영이 되는 것인지 궁금합니다. ( em.flush() 만 호출 했을 때 DB에 반영이 되는 것인지. )