본문 바로가기

728x90
반응형

Spring/JPA

(2)
[JPA] 영속성 컨텍스트(2) - 영속성 컨텍스트의 엔티티 관리 인프런에서 김영한님의 자바 ORM 표준 JPA 프로그래밍 - 기본편을 참고하여 작성한 글입니다. JPA에서의 1차 캐시 JPA는 어플리케이션과 DB 사이의 중간 역할을 하기 때문에 캐싱 기능을 사용할 수 있습니다. 1차 캐시는 영속성 컨텍스트 안에 있으며, 영속 상태의 엔티티는 1차 캐시에 들어감으로써 캐싱 기능을 사용할 수 있게 됩니다. 1차 캐시는 여러개의 엔티티가 들어갈 수 있기 때문에, 각 엔티티를 구별할 수 있는 @Id와 Entity가 함께 들어갑니다. 즉 엔티티의 PK라 할 수 있는 Id로 1차 캐시 안에서 엔티티들을 구분하게 됩니다. 1차 캐시 @Id Entity 1 PK가 1인 엔티티 객체 2 PK가 2인 엔티티 객체 ... ... 먼저 Entity Manager가 생성한 entity를 p..
[JPA] 영속성 컨텍스트(1) - 기본과 엔티티의 생명주기 및 장점 인프런에서 김영한님의 자바 ORM 표준 JPA 프로그래밍 - 기본편을 참고하여 작성한 글입니다. 영속성 컨텍스트란? JPA는 데이터와 연관된 객체들을 Entity로 분류하여 관리합니다. 따라서 데이터를 읽거나, 조회하거나 쓰는 내용들이 Entity를 통해서 이루어지게 됩니다. 이러한 엔티티들을 JPA는 어떠한 곳에 저장하는데, 이 영역을 영속성 컨텍스트라고 합니다. 영속성 컨텍스트는 엔티티 매니저를 통해서 접근할 수 있는데, 이는 눈에 보이지 않는 논리적인 개념입니다. 더보기 엔티티 매니저란? 웹 어플리케이션은 어떤 요청이 들어오게 되면, 엔티티 매니저 팩토리에서 엔티티 매니저를 생성하여 할당해줍니다. 따라서 각 요청에 따라 해당 요청을 담당해주는 엔티티 매니저가 있게 됩니다. 이 엔티티 매니저는 DB에..

728x90
반응형