- 객체와 테이블 매핑: @Entity, @Table
- 필드와 컬럼 매핑: @Column
- 기본 키 매핑: @Id
- 연관관계 매핑: @ManyToOne,@JoinColumn
- @Entity가 붙은 클래스는 JPA가 관리하고 Entity라 부른다.
- JPA를 사용해서 테이블과 매핑할 클래스는 @Entity가 필수이다.
주의사항
@Table은 엔티티와 매핑할 테이블을 지정하는 것
- DDL을 애플리케이션 실행 시점에 자동 생성
- 테이블 중심 > 객체 중심
- 데이터베이스 방언(dialect)을 활용해서 데이터베이스에 맞는 적절한 DDL 생성
- 운영서버에서 사용 대체로 안하고 개발 장비에서만 사용
주의 사항..
데이터 베이스 장비에는 절대 create, create-drop, update를 사용하면 안된다.
개발 초기 단계는 create or update
테스트 서버는 update or validate
스테이징과 운영서버는 validate or none 사용
DDL 생성 기능은 DDL을 자동 생성할 때만 사용되고, JPA 실행 로직(@Entity,@Table)에는 영향을 주지 않는다.
ex)
@Column(nullable = false, length = 10)
@Table(@uniqueConstraints = {@UniqueConstraint( name = "NAME_AGE_UNIQUE", columnNames = {"NAME", "AGE"} )})