반응형

[Spring JPA #5] JPA 엔티티 상태

반응형

| 엔티티 상태


JPA에서는 엔티티의 상태를 다음과 같이 나눈 후 사용자가 요청한 사항에 맞추어 관리하게 됩니다.


  • Transient : JPA가 엔티티를 나타내는 객체에 대한 정보를 모르는 상태
  • Persistent : JPA가 엔티티를 관리 중인 상태 
  • Detached : JPA가 더이상 엔티티를 관리하지 않는 상태
  • Removed : JPA가 엔티티를 관리하는 상태에서 이 엔티티를 삭제하기로한 상태



| JPA에서 제공하는 엔티티 기능 : 1차 캐시, Dirty Checking, Write Behind


  • 1차 캐시 : JPA에서 DB로 엔티티를 영속화 했을 때, 다시 그 엔티티를 받아올 때는 상태가 변경되지 않았을 시, 메모리에 캐시된 엔티티 정보를 받아옵니다.

  • Dirty Checking : 엔티티의 변경 사항을 추적하는 기능입니다. 상태를 추적하여 데이터에 변화가 없을 경우에는 어떠한 상태도 DB에 반영하지 않습니다.

  • Write Behind : DB에 엔티티의 변경사항을 최대한 필요한 시점에 반영하는 것을 의미합니다.


https://www.inflearn.com/course/스프링-데이터-jpa

반응형

'Spring > Spring JPA' 카테고리의 다른 글

[Spring JPA #7] JPA Fetch  (0) 2019.01.27
[Spring JPA #6] JPA Cascade  (0) 2019.01.27
[Spring JPA #4] JPA 관계 매핑  (0) 2019.01.27
[Spring JPA #3] Entity 매핑 및 Value 타입 매핑  (2) 2019.01.27
[Spring JPA #2] JPA 엔티티 매핑  (0) 2019.01.27

이 글을 공유하기

댓글

Designed by JB FACTORY