article thumbnail

해당 내용은 인프런의 '자바 ORM 표준 JPA 프로그래밍 - 기본편(김영한)'을 참고하여 작성하였습니다.

 

[Entity Mapping 설명 목차]

1. 객체와 테이블

2. 데이터베이스 스키마 자동 생성

3. 필드와 컬럼 매핑

4. 기본키 매핑

 


Entity Mapping 소개

  • 객체와 테이블 매핑
    • @Entity
    • @Table
  • 필드와 컬럼 매핑
    • @Coulmn
  • 기본 키 매핑
    • @Id
  • 연관관계 매핑
    • @ManyToOne
    • @JoinColumn

 

객체와 테이블 매핑

1. @Entity

  • Entity가 붙은 클래스 → JPA가 관리, 엔티티라고 한다.
  • JPA를 사용해서 테이블과 매핑할 클래스에 @Entity 필수

주의사항

  • 기본 생성자 필수(파라미터가 없는 public 또는  protected 생성자)
  • final 클래스, enum, interface, inner 클래스 사용 불가능
  • 저장할 필드에 final 사용 불가능

@Entity 속성

  • name 속성
    • JPA에서 사용할 엔티티 이름을 지정
    • 기본값 : 클래스 이름을 그대로 사용(ex_Member)
    • 같은 클래스 이름이 없으면 가급적 기본값을 사용

 

2. @Table

@Table은 엔티티와 매핑할 테이블을 지정한다.

@Table의 속성

  • name : 매핑할 테이블 이름(기본값은 엔티티 이름을 사용)
    → 엔티티와 DB 테이블의 이름을 달리하고 싶을 때 사용하면 된다.
  • catalog : 데이터베이스 catalog 매핑
  • schema : 데이터베이스 schema 매핑
  • uniqueConstraints(DDL) : DDL 생성 시에 유니크 제약 조건 생성