스파르타 부트캠프(spring)
[내일배움캠프_Spring] 자바 Spring 입문_221212
wkdwldP
2022. 12. 13. 00:11
영속성 컨텍스트
:엔티티를 영구 저장하는 환경. 에플리케이션이 데이터베이스에서 꺼내 온 데이터 객체를 보관하는 역할을 한다. 엔티티 매니저를 통해 엔티티를 조회하거나 엔티티를 보관하고 관리한다.
- 엔티티 매니저마다 개별적으로 부여되는 어떠한 논리적 공간같은 개념으로 비유적으로 이해하자.
- 자바의 엔티티 객체를 앤티티 매니저마다 가지고 있는 영속성 컨텍스트라는 공간에 넣고 빼고 하면서 사용하는것.
JPA 엔티티의 상태
- 비영속(New) : 영속성 컨텍스트와 관계없는 새로운 상태. 해당 객체의 데이터 변경되건 말건 실제 DB의 데이터와는 관련이 없고 그냥 Java 객체
- 영속(Managed) : 엔티티 매니저를 통해 엔티티가 영속성 컨텍스트에 저장되어 관리되고 있는 상태. ->데이터의 생성, 변경 등을 JPA가 추적하면서 필요하면 DB에 반영함
- 준영속(Detached) : 영속성 컨텍스트에서 관리되다가 분리된 상태
- 삭제(Removed) : 영속성 컨텍스트에서 삭제된 상태