작성
·
149
답변 1
0
안녕하세요. 황인호님, 공식 서포터즈 OMG입니다.
준영속 객체는 DB에 저장되었던 적이 있고, 식별자(id)도 할당되어있는 상태입니다 😀
반면 말씀하신 persist하기 전과 동일한 상태(비영속 상태)와는 차이가 있으며
아래 링크의 영한님 답변과 같이
new 상태인 객체와 준영속 상태의 객체는 merge()
라는 명령에서 동작에 차이가 있습니다. new 상태
인 객체는 merge()
를 호출할 때 완전히 새로운 엔티티
를 만듭니다. 반면에 준영속 상태
의 엔티티는 DB에서 기존 엔티티를 찾고
그 값을 준영속 상태의 객체로 변경한 후에 반환
합니다.
준영속 상태는 식별자가 서두에 답변드린 것처럼 식별자가 존재하여 DB에서 기존 엔티티를 찾을 수 있습니다.
다음 링크를 참고해주세요 😀
감사합니다.