영속성컨텍스트

백엔드/JPA

[JPA] 엔티티 조회, 등록, 수정, 삭제

엔티티 조회 영속성 컨텍스트는 내부에 캐시를 가지고 있는데 이것을 1차 캐시라 한다. 영속 상태의 엔티티는 모두 이곳에 저장된다. 쉽게 이야기하면 영속성 컨텍스트 내부에 Map이 하나 있는데 키는 @Id로 매핑한 식별자고 값은 엔티티 인스턴스다. //엔티티를 생성한 상태 (비영속) Member member = new Member(); member.setId("member1"); member.setUsername("회원1"); //엔티티를 영속 em.persist(member); 이 코드를 실행하면 다음과 같이 1차 캐시에 회원 엔티티를 저장한다. 회원 엔티티는 아직 데이터베이스에 저장되지 않았다. 이번에는 엔티티를 조회해보자. Member member = em.find(Member.class, "memb..

백엔드/JPA

[JPA] 영속성 컨텍스트(persistence context)란?

엔티티 매니저 팩토리와 엔티티 매니저 엔티티 매니저는 엔티티를 저장하고, 수정하고, 삭제하고, 조회하는 등 엔티티와 관련된 모든 일을 처리한다. 이름 그대로 엔티티를 관리하는 관리자다. 데이터 베이스를 하나만 사용하는 애플리케이션은 일반적으로 EntityManagerFactory를 하나만 생성한다. 다음은 엔티티 매니저 팩토리를 생성하는 코드다. //공장 만들기, 비용이 아주 많이 든다. EntityManagerFactory emf = Persistence.createManagerFactory("jpabook"); 이제는 필요할 때마다 엔티티 매니저 팩토리에서 엔티티 매니저를 생성하면 된다. //공장에서 엔티티 매니저 생성, 비용이 거의 안든다. EntityManager em = emf.createEnt..

밝은별 개발자
'영속성컨텍스트' 태그의 글 목록