JPA 영속성 컨텍스트 완벽 해부: 1차 캐시와 변경 감지(Dirty Checking) 원리
JPA 영속성 컨텍스트 완벽 해부: 1차 캐시와 변경 감지(Dirty Checking) 원리 1. 서론 Spring Data JPA를 사용하다 보면 신기한 경험을 하게 됩니다. 데이터베이스에서 객체를 조회한 후, setter 메서드로 값을 변경하기만 했는데 별도로 save()나 update() 메서드를 호출하지 않아도 DB에 변경 사항이 반영되는 현상입니다. 마치 자바 컬렉션에서 객체를 꺼내 필드를 수정한 것처럼 자연스럽게 동작합니다. 또한, 같은 ID를 가진 엔티티를 두 번 조회했는데 … 더 읽기