작성
·
168
0
안녕하세요, 좋은 강의 만들어주셔서 감사합니다.
강의듣다가 궁금한것이 생겨 질문드립니다.
em.flush() 전에 벌크 수정쿼리를 날려 db에는 41살, 1차캐시에는 40살인데 em.flush()를 하면 db가 40살로 바뀌는게 아닌가요?
결과값이 41로 나온걸로 봐서는 제 생각에는 1차 캐시에 변경이 없기 때문에 flush해도 쿼리가 안나가건가 싶습니다.
명확하게 와닿지 않아 질문드립니다.
감사합니다.
답변 1
0
안녕하세요. 변지수님^^ 좋은 질문입니다.
JPA는 JPQL이 실행되기 직전에도 flush가 발생합니다.
벌크 연산도 JPQL로 작성되기 때문에 벌크연산 실행 직전에 flush가 이미 발생했습니다^^
감사합니다.