엔티티 매핑 소개

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

객체와 테이블 매핑

@Entity

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

💡 주의

  • 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자)
    • 스펙 상 규정되어 있음
    • 리플렉션 등 동적인 기술을 쓸때 꼭 필요한 조건이다.
  • final 클래스, enum, interface, inner 클래스 사용불가하다.
  • 저장할 필드에 final 사용할 수 없다.(당연하지만..)

@Entity 속성

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

@Table

  • @Table은 엔티티와 매핑할 테이블 지정
속성 기능 기본값
name 매핑할 테이블 이름 엔티티 이름
catalog 데이터베이스 catalog 매핑  
schema 데이터베이스 schema 매핑  
uniqueConstraints DDL생성 시에 유니크 제약 조건 생성  

 

'DB > JPA' 카테고리의 다른 글

필드와 컬럼 매핑  (0) 2022.12.31
데이터 베이스 스키마 자동생성  (0) 2022.12.30
준영속 상태  (0) 2022.12.30
플러시  (1) 2022.12.30
영속성 컨텍스트 2  (0) 2022.12.30

+ Recent posts