
한 엔티티의 PK를 2개의 FK로 가지는 클래스
신고 테이블은 필드로 두 개의 User 클래스를 가진다. - JoinColumn의 옵션 중 referencedColumnName을 생략하면 부모테이블의 PK와 자동으로 매핑됨 - name 옵션을 사용하면 매핑할 외래키 이름을 정해줄 수 있음
신고 테이블은 필드로 두 개의 User 클래스를 가진다. - JoinColumn의 옵션 중 referencedColumnName을 생략하면 부모테이블의 PK와 자동으로 매핑됨 - name 옵션을 사용하면 매핑할 외래키 이름을 정해줄 수 있음
JPA로 DB의 테이블과 상호작용(데이터 CRUD)하기 위해서는, 엔티티 클래스와 DB의 테이블이 매핑되어 있어야 한다. 엔티티 매핑은 크게 아래와 같이 분류할 수 있다. 엔티티 객체 & DB 테이블 간의 매핑 기본키 매핑 필드(멤버변수) &컬럼 간의 매핑 엔티티 간의 연관관계 매핑 1️⃣ 엔티티 & 테이블 매핑 - @Entity: JPA가 관리하는 클래스 = 엔티티 클래스 - @Table: 엔티티와 매핑할 테이블을 지정하는 애너테이션 import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table public class Member { @Id private Long memb..
JPA(Java Persistence API) 자바 진영에서 ORM(Object Relational Mapping)기술의 표준사양(명세-Specification)(= 인터페이스) => 실제 구현된 것들이 아닌, 구현된 클래스들과 매핑해주기 위해 사용되는 기술 모음 현재는 Jakarta Persistence라고 불린다. Hibernate ORM(Object Relational Mapping) - JPA 인터페이스를 구현한 구현체 중 하나 - 애플리케이션의 Class와 관계형 데이터베이스의 Table을 자동으로 매핑해 주는 기술 JPA in Data Access Layer JPA는 데이터 엑세스 계층에서 상단에 위치한다. => 데이터 CRUD 작업은 JPA를 거쳐 JPA의 구현체인 Hibernate ORM을..