Flèche
[JPA]영속성컨텍스트1 본문
커넥션풀 : DB에서 미리 connection(연결)을 해놓은 객체들을 pool에 저장해두었다가, 클라이언트 요청이 오면 connection을 빌려주고
처리가 끝나면 다시 connection을 반납받아 pool에
저장하는 방식을 말한다.캐쉬 : 애플리케이션의 처리 속도를 높여준다. 이미 가져온 데이터나 계산된 결과값의 복사본을 저장함으로써 처리 속도를 향상시키며,
이를 통해 향후 요청을 더 빠르게 처리할 수 있다.웹 캐쉬 : 사용자(client)가 웹 사이트(server)에 접속할 때, 정적 컨텐츠(이미지, JS, CSS 등)를 특정 위치(client, network 등)에 저장하여, 웹 사이트 서버에 해당 컨텐츠를 매번 요청하여 받는것이 아니라
특정 위치에서 불러옴으로써 사이트 응답시간을 줄이고, 서버 트래픽 감소 효과를 볼 수 있다.
엔티티 매니저 팩토리, 엔티티 매니저
엔티티 매니저 팩토리
- 엔티티 매니저를 만듦.
- 애플리케이션 전체에서 공유함 == 여러 스레드가 접근가능
엔티티 매니저
- 엔티티의 CRUD등을 처리.
- 스레드 하나당 하나를 생성함.
영속성 컨텍스트
EntityManger.persist(member);
- DB에 엔티티 저장하는게 아니라 엔티티 매니저를 통해
회원 엔티티를 영속성 컨텍스트에 저장. - 영속성 컨텍스트는 엔티티 매니저를 생성할 때 하나만 만들어진다.
엔티티의 생명주기
비영속
- 엔티티 객체가 생성된 순수 객체 상태
아직 영속성 컨텍스트나 데이터베이스와는 전혀 관계가 없는 상태
영속
- 영속성 컨텍스트에 저장된 상태이다.
준영속
- 영속성 컨텍스트가 관리하던 영속 상태의 엔티티를 영속성 컨텍스트가 관리하지 않으면 준영속 상태가 됨
삭제
`EntityManager.remove(entity)`
- 영속성 컨텍스트와 DB에서 엔티티 삭제
'spring' 카테고리의 다른 글
[JPA]영속성컨텍스트2 (0) | 2021.04.04 |
---|---|
[http]메세지 바디와 엔티티 바디의차이 (0) | 2021.03.20 |
[테스트코드] getForEntity getForObject (0) | 2021.03.09 |
[테스트코드]httpentity, testresttemplate.exchange (0) | 2021.03.08 |
[http] put과 post/http헤더와 바디_get방식과 post방식 (0) | 2021.03.06 |