⚡ 생각대로 살지 않으면 사는대로 생각한다.
⚡ 나는 어차피 잘 될 놈이다. 이미 잘 되고 있고, 계속해서 잘 되고 있다.
쓰기 지연 SQL 저장소
에 등록쓰기 지연 SQL 저장소
의 쿼리를 데이터베이스에 전송(등록, 수정, 삭제 쿼리)플러시가 발생한다고해서 데이터베이스 트랜잭션이 커밋되는 것이 아니고, 쿼리를 보내고 커밋을 한다.
위와 같이 코드를 작성하고, 아래의 결과를 보면, flush를 한 시점에 SQL 쿼리를 날린다.
flush를 한다해도, 1차 캐시는 지워지지 않는다.
플러시는 변경사항 SQL이 반영되는 과정이다!
memberA,memberB,memberC를 persist한다고해서 DB에 반영되지는 않는다. 어떤 쿼리를 날려서 DB에 반영해줘야 한다.
그리고, 아래 JPQL은 select문으로 조회를 하는 쿼리인데, DB에 반영되지 않은 상태에서 조회를 한다고해서 반영되진 않는다.
JPA는 JPQL을 실행하기 전에 무조건 flush로 쿼리를 날리게 되어있다.
그래서 위 JPQL을 실행하면, memberA , memberB, memberC를 조회할 수 있다.
영한좌 :
그냥 AUTO로 쓰십쇼~
JPA는 동시성에 대한 것을 데이터베이스 트랜잭션에 다 위임해서 사용한다.
-끝-