로딩
티스토리 데이터 처리 중입니다.

[JPA] 변경 감지와 병합

 [JPA] 변경 감지와 병합

준영속 엔티티란? - 영속성 컨텍스트가 더는 관리하지 않는 엔티티 - DB에 한번 저장되었기에 식별자가 존재하지 않아 JPA가 변경감지를 하지 않아 수정을 하여도 DB에 업데이트가 일어나지 않음 준영속 엔티티를 수정하는 방법 1.

변경 감지 기능 사용 2. 병합(merge) 사용 1.

변경감지 기능사용 (=Dirty Checking) -> 리파지토리에서 id를 기반으로 하여 데이터를 찾은 후, 값을 수정하는 방식이다. -> @Transactional에 의해 save 필요없이 커밋을 통해 변경감지하여 변경된 내용을 flush 한다. 2.

병합(merge) 사용 -> 객체를 생성한 뒤, save 하는 시점에 위와 같이 merge()를 해준다. merge의 단점 - 해당 모든 값들을 업데이트 하기 때문에 값이.....