1HOON
논리적 코딩
1HOON
전체 방문자
오늘
어제
  • HOME (187)
    • ☕️ JAVA (28)
      • WhiteShip Java LIVE Study (6)
      • Effective JAVA (10)
    • 🔮 KOTLIN (4)
    • 🌱 SPRING (51)
      • 스프링 인 액션 (22)
      • JPA (18)
    • ☕️ JAVASCRIPT (6)
    • 📃 DATABASE (40)
      • ORACLE (37)
      • MSSQL (2)
    • 🐧 LINUX (4)
    • 🐳 DOCKER (5)
    • 🐙 KUBERNETES (4)
    • 🏗️ ARCHITECTURE (8)
    • 📦 ETC (27)
      • TOY PROJECT (5)
      • RECRUIT (1)
      • 그냥 쓰고 싶어서요 (14)
      • TIL (1)
    • 🤿 DEEP DIVE (1)
    • 🚽 Deprecated (9)
      • PYTHON (3)
      • AWS (2)
      • HTTP 완벽가이드 (3)
      • WEB (1)

블로그 메뉴

  • 홈
  • 방명록
  • 관리

인기 글

최근 글

티스토리

hELLO · Designed By 정상우.
1HOON

논리적 코딩

[JPA] 엔티티
🌱 SPRING/JPA

[JPA] 엔티티

2020. 6. 13. 16:07

 

@Entity

@Entity 어노테이션이 붙은 클래스는 JPA가 관리하며, 이를 엔티티라고 한다. JPA에서는 이 엔티티를 테이블과 매핑해 SQL문을 작성하며, 옵션을 지정해 생성되지 않은 테이블을 엔티티를 통해 생성할 수도 있다.

 

주의사항

  • JPA 기본 스펙으로 인해 엔티티에는 기본 생성자가 필수적으로 필요하다.
    → JPA를 구현하는 라이브러리에서 객체를 프록싱할 때 필요
  • final 클래스, enum, inteface, inner 클래스는 사용이 불가능하다.
  • 컬럼에 매핑되어 저장할 필드에는 final 사용이 불가능하다.

 

주요 속성

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

 

 

@Table

@Table 어노테이션은 엔티티와 매핑할 테이블을 지정하는 기능을 한다. name 속성에 매핑할 테이블의 이름을 지정하는데, 예를 들어 Member 엔티티를 MEMBER_M 테이블과 매핑하려면 @Table(name="MEMBER_M")을 추가해주면 된다.

 

주요 속성

  • name
    - 매핑할 테이블 이름
    - 기본값 : 엔티티 명
  • catalog
    - 데이터베이스 catalog 매핑
  • schema
    - 데이터베이스 schema 매핑
  • uniqueConstraints
    - DDL 생성 시 Unique 제약 조건 생성

 

 


출처 :: 인프런 강의(자바 ORM 표준 JPA 프로그래밍 - 기본편)

반응형
저작자표시 비영리 변경금지 (새창열림)

'🌱 SPRING > JPA' 카테고리의 다른 글

[JPA] 매핑 어노테이션  (0) 2020.06.13
[JPA] 스키마 자동 생성  (0) 2020.06.13
[JPA] 플러시(flush)  (0) 2020.06.13
[JPA] 영속성 컨텍스트  (1) 2020.06.07
[JPA] JPQL 맛보기  (1) 2020.06.07
    '🌱 SPRING/JPA' 카테고리의 다른 글
    • [JPA] 매핑 어노테이션
    • [JPA] 스키마 자동 생성
    • [JPA] 플러시(flush)
    • [JPA] 영속성 컨텍스트
    1HOON
    1HOON

    티스토리툴바