본문 바로가기
728x90
반응형

JavaORM3

[JPA] 영속성 컨텍스트의 특징 및 기본 구조 :) 영속성 컨텍스트의 특징 영속성 컨텍스트와 식별자 값 @Id 어노테이션으로 테이블의 기본키와 매핑된 값으로 구분한다. 따라서 영속 상태의 엔티티에서는 식별자 값이 필수이다. 만약 영속 상태에서 식별자 값이 없으면 예외가 발생한다. 영속성 컨텍스트와 데이터 베이스 저장 JPA 에서는 대게 트랜잭션이 끝나는(commit) 순간 데이터베이스에 영속성 컨텍스트에 있는 내용을 반영하는데 다음과 같은 과정을 flush라고 한다 영속성 컨텍스트가 엔티티를 관리하게 되었을때 얻을 수 있는 장점. 1차캐시, 동일설 보장, 트랜잭션을 지원하는 쓰기 지연, 변경 감지, 지연로딩 :) 엔티티 등록 영속성 컨텍스트에는 내부 캐시를 가지고 있을 수 있는 공간이 있는데 이것을 1차 캐시라고 부른다. 영속상태인 모든 엔티티는 모.. 2020. 12. 20.
[JPA] JPA 실습 구성하기 - 2 전에 포스팅했던 실습 구성하기 1에 이은 2번째 포스팅입니다. 2번재 포스팅에서는 JPA가 어떻게 실행되었는지 1탄에 적었던 포스팅에 이어서 보겠습니다. public class JpaApplication { public static void main(String[] args) { ① EntityManagerFactory emf = Persistence.createEntityManagerFactory("jpa-sample"); ② EntityManager em = emf.createEntityManager(); //엔티티 매니저 생성 ③ EntityTransaction tx = em.getTransaction(); //트랜잭션 기능 획득 try { tx.begin(); ④ Member member = ne.. 2020. 12. 16.
[JPA] JPA 실습 구성하기 - 1 원래는 Sprind-data-jpa로 실습을 하려다가 JPA를 먼저하고 해도 늦지 않을거같아 간단한 예제들만 테스트 하면서 넘어가기 위해 JPA 실습환경을 구축해봤습니다. 먼저 JPA 구현체로 하이버네이트를 사용하기 위한 핵심 라이브러리는 3가지가 있습니다. hibernate-core : 하이버네이트 라이브러리 hibernate-entitymanager : 하이버네이트가 JPA 구현체로 동작하도록 JPA 표준을 구현한 라이브러리 hibernate-jpa-2.1-api: JPA2.1 표준 API를 모아둔 라이브러리 실습한 저의 환경구성은 다음과 같습니다 SpringBoot 2.4.1 H2 DB Maven Lombok을 사용하였습니다. h2 db 설치관련된 내용은 검색하면 많이 나오기 때문에 생략하겠습니다... 2020. 12. 16.
728x90
반응형