Backend/JPA

Backend/JPA

[JPA] 상속 관계 매핑

상속 관계 매핑 전략 상속 관계 매핑이란 객체의 상속 구조와 DB의 슈퍼-서브타입 관계(아이템-영화/책/앨범 관계)를 매핑하는 것. 객체는 상속관계가 존재하지만 대부분의 RDB는 상속 관계가 없다. 이것을 슈퍼-서브타입 관계라는 모델링 기법으로 나타내 주는 것. 슈퍼-서브타입 자세히 DB모델링 - 관계 (슈퍼-서브타입) 논리 모델 → 물리 모델 구현 세가지 @Inheritance(strategy=InheritanceType.XXX) stategy 설정 JOINED SINGLE_TABLE(=default) : 단일 테이블 전략 TABLE_PER_CLASS @DiscriminatorColumn(name="DTYPE") 부모 클래스에 선언. 하위 클래스를 구분하는 용도의 컬럼을 생성함. (DTYPE 컬럼에 영..

Backend/JPA

[JPA] 연관 관계 매핑

연관 관계 정의 규칙 1. 방향 (단방향, 양방향) DB 테이블은 외래 키 하나로 양 쪽 테이블 조인이 가능하기 때문에 단방향, 양방향 나눌 필요가 없다. 그러나 객체는 참조용 필드가 있는 객체만 다른 객체를 참조할 수 있다. 그래서 두 객체 사이에 하나의 객체만 참조용 필드를 갖고 있으면 단방향, 두 객체 모두가 각각 참조용 필드를 갖고 참조하면 양방향 관계라고 한다. 무조건적인 양방향 매핑은 복잡성을 증가시키고 유지 보수도 어렵게 만들기 때문에 기본적으로 단방향 매핑을 사용하되 역방향 객체 탐색이 반드시 필요한 경우에 추가하는 것이 바람직하다. 고객(Member) 객체와 주문(Order) 객체가 있을 때, 고객이 주문한 내역을 모두 확인하기 위해서는 고객 객체에 주문을 참조할 수 있는 필드가 필요하다..

Backend/JPA

ORM이란? JPA, Hibernate란?

ORM (Object Relation Mapping) 객체 관계 매핑. 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법이다. 객체는 객체대로, DB는 DB대로 설계하면 ORM이 알아서 매핑해준다. JPA: 기술 명세. API. Hibernate: 자바 언어를 위한 객체 관계 매핑 프레임워크. jpa를 구현한 실체 구현체라고 보면 된다. JPA (Java Persistence API) 자바 플랫폼 SE와 자바 플랫폼 EE를 사용하는 응용프로그램에서 관계형 데이터베이스의 관리를 표현하는 자바 API이다. 기존에 EJB에서 제공되던 엔터티 빈(Entity Bean)을 대체하는 기술이다. 구성 요소 JPA는 아래의 세 가지 영역으로 구성된다 javax.persist..

얌얌념념
'Backend/JPA' 카테고리의 글 목록