[3장] 영속성 관리

책 스터디 정리/JPA ORM 스터디 2023. 4. 11. 22:12

1. 엔티티 매니저 팩토리와 엔티티 매니저 엔티티 매니저 팩토리 리소스 사용 ↑ 여러 스레드 동시 접근해도 안전해서 스레드 간 공유에 이슈 없음 Hibernate 포함 JPA 구현체 → 팩토리 생성 시 DB 커넥션 풀 생성 엔티티 매니저 리소스 사용 거의 X 여러 스레드 동시 접근시 동시성 이슈 발생 → 공유하면 안됨 데이터베이스 연결이 필요한 시점까지 DB 커넥션 사용 X 보통 트랜잭션을 시작할 때, DB 커넥션 획득 2. 영속성 컨텍스트란? 영속성 컨텍스트( JPA 이해에 제일 중요한 용어 ) 엔티티를 영구 저장하는 환경 엔티티 저장/조회시, 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리 엔티티 매니저가 생성될 때, 같이 생성 3. 엔티티의 생명주기 엔티티의 4가지 상태 비영속: 영속성 컨..

Article Thumbnail
[1장] JPA 소개

책 스터디 정리/JPA ORM 스터디 2023. 4. 4. 14:07

1-1. SQL을 직접 다룰 때 발생하는 문제점 자바 애플리케이션이 관계형 DB와 통신할 때 JDBC API를 통해 SQL문을 사용한다. DB와 객체는 서로 다른 구조를 가지고 있어 객체를 DB에 직접 저장하거나, 조회가 불가능해서 개발자가 직접 애플리케이션 코드와 DB 테이블 사이의 변환 작업을 SQL과 JDBC API로 해야한다. 테이블마다 동일하게 DAO 구성 작업을 반복해야한다. 1-2. SQL에 의존적인 개발 개발하다 요구사항(스펙)이 변경되면 관련 DAO 로직의 SQL 실행을 확인 후, 수정이 필요하다. SQL에 의존하는 상황에서는 엔티티를 신뢰할 수 없다. 물리적으로는 SQL과 JDBC API를 DAO에 숨겼지만, 논리적으로는 강한 의존 관계를 가지고 있다. 강한 의존 관계로 인해 요구 사항..

Article Thumbnail