영속성
-
[JPA] 3. 영속성 관리 - 플러시, 준영속ComputerScience/JPA 2022. 6. 19. 15:05
앞 장에서 영속성 컨텍스트에 대해 알아봤습니다. 이번 장에서는 영속성 컨텍스트에서 사용하는 플러시와 준영속 상태에 대해 알아보겠습니다. 플러시 플러시를 작동시키게 되면 영속성 컨텍스트의 변경내용을 데이터베이스에 반영하게 됩니다. 보통은 DB가 commit 될 때 flush가 발동하게 됩니다. 플러시의 특징은 다음과 같습니다. 영속성 컨텍스트를 비우지 않음 -> 1차 캐시를 비우는 게 아닙니다. 영속성 컨텍스트의 변경내용을 데이터베이스에 동기화 트랜잭션이라는 작업 단위가 중요 -> 커밋 직전에만 동기화 하면 됩니다. 플러시 작동 순서 변경감지 수정된 엔티티 쓰기 지연 SQL 저장소에 등록 쓰기 지연 SQL 저장소의 쿼리를 데이터베이스에 전송(등록, 수정, 삭제 쿼리) 영속성 컨텍스트를 플러시 하는 방법 영..
-
[JPA] 3. 영속성 관리 - 영속성 컨텍스트ComputerScience/JPA 2022. 6. 11. 17:02
영속성 컨텍스트 JPA에서 가장 중요한 2가지가 있습니다. 첫번째는 이전 장에서 설명했던 관계형 데이터베이스를 매핑하는 것이고 두번째는 영속성 컨텍스트입니다. 엔티티 매니저 팩토리와 엔티티 매니저 처음 생성된 엔티티 매니저 팩토리는 클라이언트의 요청에 따라 엔티티 매니저를 생성합니다. 그리고 엔티티 매니저는 DB Connection Pool에 있는 Connection을 이용해서 DB에 접근합니다. DB Connection Pool DB Connection 생성 자체가 리소스를 많이 소모하기 때문에 미리 Connection들을 생성해둔 뒤 DB 연결에 대한 요청이 올때마다 사용하기 위한 Pool 영속성 컨텍스트란? JPA를 이애하는데 가장 중요한 용어입니다. "엔티티를 영구 저장하는 환경"이란 뜻입니다. ..