• [자바 ORM 표준 JPA 프로그래밍] 10장. 객체지향 쿼리 언어

    10장. 객체지향 쿼리 언어 10.1 객체지향 쿼리 소개 JPQL 특징 DB 테이블이 아닌 엔티티 객체를 대상으로 검색하는 객체지향 쿼리 SQL을 추상화하여 특정 DB SQL에 의존 X JPA에서 공식 지원하는 기능 JPQL(Java Persistence Query Langauge) Creiteria 쿼리: JPA 작성 도와주는 API, 빌더 클래스 모음 네이티브 SQL: JPA에서 JPQL 대신 직접 SQL...


  • [자바 ORM 표준 JPA 프로그래밍] 9장. 값 타입

    9장. 값 타입 JPA의 데이터 타입은 크게 엔티티 타입, 값 타입 두개로 분류 가능 엔티티 타입 @Entity 로 정의하는 객체 식별자 있음 식별자로 구별하고 지속 추적 가능 생명 주기가 있음 생성, 영속화, 소멸하는 생명 주기 존재 공유 가능 참조 값 공유할 수 있음 => 공유 참조 값 타입 int, Integer,...


  • [자바 ORM 표준 JPA 프로그래밍] 8장. 프록시와 연관관계 관리

    8장. 프록시와 연관관계 관리 8.1 프록시 엔티티 조회 시 연관된 엔티티가 항상 사용되는 것은 아님 ∴ JPA는 엔티티가 실제 사용될 때까지 DB 조회를 지연시키는 방법을 제공 ==> 지연 로딩(lazy loading) 지연 로딩 기능을 위해 실제 엔티티 객체 대신 DB 조회를 지연시키는 가짜 객체를 사용 ==> 프록시 객체 8.1.1 프록시 기초...


  • [자바 ORM 표준 JPA 프로그래밍] 7장. 고급 매핑

    7장. 고급 매핑 7.1 상속 관계 매핑 관계형 DB에는 상속이라는 개념 X ORM 에서 얘기하는 상속 관계 매핑은 객체의 상속구조와 DB의 슈퍼타입 서브타입 관계를 매핑하는 것 슈퍼타입 서브타입 논리 모델을 실제 물리 모델인 테이블로 구현시 아래와 같은 3가지 방법중 선택 가능 각각의 테이블로 변환: 각각을 모두 테이블로 만들고 조회할 때...


  • [자바 ORM 표준 JPA 프로그래밍] 6장. 다양한 연관관계 매핑

    6장. 다양한 연관관계 mapping 6.1 N:1 항상 N:1 의 반대 방향은 1:N, 1:N의 반대 방향은 N:1 1:N, N:1 관계에서 foreign key는 항상 N 쪽에 위치 ∴ owner는 N 쪽 6.1.1 N:1 단방향 [N:1] 코드 // member entity @Entity public class Member { @Id @GeneratedValue private Long id; private String username;...