개발서적/자바 ORM 표준 JPA
[자바 ORM 표준 JPA 프로그래밍] 4.7 필드와 컬럼 매핑: 레퍼런스
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 3.5 플러시 3.6 준영속 4. 엔티티 매핑 4.1 - 4.3 @Entity, @Table, 다양한 매핑 4.4 - 4.5 데이터베이스 스키마 자동 생성, DDL 생성 기능 4.6 기본 키 매핑 필드와 컬럼 매핑 분류 분류 매핑 어노테이션 설명 필드와 컬럼 매핑 @Column 컬럼을 매핑 제목 없음 @Enumer..
[자바 ORM 표준 JPA 프로그래밍] 4.6 기본 키 매핑
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 3.5 플러시 3.6 준영속 4. 엔티티 매핑 4.1 - 4.3 @Entity, @Table, 다양한 매핑 4.4 - 4.5 데이터베이스 스키마 자동 생성, DDL 생성 기능 @Entity public class Member { @Id @Column (name = "ID") private String id; .....
[자바 ORM 표준 JPA 프로그래밍] 4.4 - 4.5 데이터베이스 스키마 자동 생성, DDL 생성 기능
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 3.5 플러시 3.6 준영속 4. 엔티티 매핑 4.1 - 4.3 @Entity, @Table, 다양한 매핑 4.4 데이터베이스 스키마 자동 생성JPA는 데이터베이스 스키마를 자동으로 생성하는 기능을 지원클래스의 매핑정보를 보면 어떤 컬럼을 사용하는지 확인 가능JPA는 매핑정보와 데이터베이스 방언(2.5.1절 참고)..
[자바 ORM 표준 JPA 프로그래밍] 4.1 - 4.3 @Entity, @Table, 다양한 매핑
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 3.5 플러시 3.6 준영속 4.1 @Entity 들어가기 전 JPA에서 가장 중요한 일은 엔티티와 테이블을 정확히 매핑하는 작업 JPA는 다양한 매핑 어노테이션을 지원, 크게 4가지로 분류 가능 객체와 테이블 매핑: @Entity, @Table 기본 키 매핑: @Id 필드와 컬럼 매핑: @Column 연관관계 매..
[자바 ORM 표준 JPA 프로그래밍] 3.6 준영속
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 3.5 플러시 3.6 준영속 영속 상태의 엔티티가 영속성 컨텍스트에서 분리된 상태를 의미 준영속 상태의 엔티티는 영속성 컨텍스트가 제공하는 기능 사용 못함 영속 상태 → 준영속 상태 만드는 방법 3가지 em.detach(entity): 특정 엔티티만 준영속 상태로 전환 em.clear(): 영속성 컨텍스트를 완전히..
[자바 ORM 표준 JPA 프로그래밍] 3.5 플러시
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 3.5 플러시 영속성 컨텍스트의 변경 내용을 데이터베이스에 반영 플러시 실행 순서 변경감지가 동작 모든 엔티티를 스냅샷과 비교해서 수정 엔티티를 찾음 수정된 엔티티는 수정 쿼리를 만들어 쓰기 지연 SQL 저장소에 등록 쓰기 지연소 SQL 저장소의 쿼리를 데이터베이스의 전달 영속성 컨텍스트를 플러시하는 방법 3가지 ..
[자바 ORM 표준 JPA 프로그래밍] 3.4 영속성 컨텍스트의 특징
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 3.4 영속성 컨텍스트의 특징 영속성 컨텍스트와 식별자 값 엔티티를 식별자 값(@Id로 테이블의 기본키와 매핑한 값)으로 구분 영속 상태는 식별자 값이 반드시 필요 (없으면 예외 발생) 영속성 컨텍스트와 데이터베이스 저장 플러시(flush): JPA는 보통 트랜잭션을 커밋하는 순간 영속성 컨텍스트에 새로 저장된 엔티티를 데이터베이스에 반영 영속..
[자바 ORM 표준 JPA 프로그래밍] 3.3 엔티티의 생명주기
Reference. 자바 ORM 표준 JPA 프로그래밍 책 목차 및 이전 글 더보기 들어가기 전 JPA 특징, Q&A 1. JPA 소개 1.1 SQL을 직접 다룰 때 발생하는 문제점 1.2 패러다임의 불일치 1.3 JPA란 무엇인가? 2. JPA 시작 3. 영속성 관리 3.1 엔티티 매니저 팩토리와 엔티티 매니저 3.2 영속성 컨텍스트란? 3.3 엔티티의 생명주기 비영속(new/transient): 영속성 컨텍스트와 전혀 관계가 없는 상태 영속(managed): 영속성 컨텍스트에 저장된 상태 준영속(detached): 영속성 컨텍스트에 저장되었다가 분리된 상태 삭제(removed): 삭제된 상태 비영속 엔티티 객체를 생성 순수한 객체 상태이며, 아직 저장되지 않은 상태 영속성 컨텍스트나 데이터베이스와 전..