@Entity
- @Entity가 붙은 클래스는 JPA과 관리하고, 이를 엔티티라고 한다.
- JPA를 이용해서 테이블과 매핑할 클래스는 @Entity가 필수
주의사항
- final 클래스, enum, interface, inner 클래스에 사용 X
- DB에 저장할 필드에는 final을 사용 X
name 속성
JPA에서 사용할 Entity 이름을 지정한다.
기본값으로 클래스 이름을 그대로 사용한다.
같은 이름이 있는 게 아니라면 가급적 기본값을 사용한다.
속성 : name
@Entity(name = "원하는 이름 넣기")
- JPA에서 사용할 엔티티 이름을 지정한다.
- 기본값 : 클래스 이름을 그대로 사용
- 같은 클래스 이름이 없으면 가급적 기본값을 사용한다.
@Table
- @Table은 엔티티와 매핑할 테이블을 지정한다.
속성 : name
@Table(name = "원하는 이름 넣기")
- 매핑할 테이블 이름
- 실제 쿼리도 name에 지정된 테이블로 나간다.
- Entity 이름을 기본값으로 사용
속성 : catalog
데이터베이스 catalog 매핑
속성 : schema
데이터베이스 schema 매핑
속성 : uniqueConstraints(DDL)
DDL 생성 시에 유니크 제약 조건 생성
참고 :
김영한. 『자바 ORM 표준 JPA 프로그래밍』. 에이콘, 2015.
자바 ORM 표준 JPA 프로그래밍 - 기본편