[Spring JPA #2] JPA 엔티티 매핑 용어 정리
- 📚 Spring/Spring JPA
- 2020. 6. 27. 11:36
@Entity
- 엔티티는 자바에서 객체지향적인 코드를 작성할 때 네이밍된 DB와 대응된느 클래스의 이름이다.
- 보통 클래스와 같은 이름을 사용하기 때문에 값을 변경하지 않는다. 값을변경할 때는 @Entity(name="myAcount") 와 같은 형식의 어노테이션을 붙이면 된다.
@Table
- 테이블은 RDBMS 안의 릴레이션 스키마에 대응되는 이름을 나타낸다.
- @Table(name="myAcount") 같은 형식의 어노테이션을 붙여서 엔티티와 대응되는 테이블명을 명시할 수 있다.
@Id
- 엔티티의 주키를 매핑할 때 사용한다.
- 자바의 모든 Primtive 타입과 그 래퍼타입을 사용할 수 있다.
@GeneratedValue
- 주키의 생성 방법을 매핑하는 어노테이션이다.
- 생성전략과 생성기를 설정할 수 있다.
- 기본적으로 AUTO 이며 DB에 따라서 주키 생성 방법에 대한 전략이 달라 질 수 있다.
@Column
- @Column은 멤버 변수와 DB Table의 컬럼에 매핑하는 어노테이션 이다.
- @Entity 어노테이션이 붙어있는 엔티티 클래스의 멤버 변수에는 기본적으로 @Column 어노테이션이 붙은효과가 기본적으로 부여된다.
@Temporal
- @Temporal은 시간을 나타내는 데이터를 각 DBMS에서 제공하는 시간 관련 데이터와 매핑한다.
@Transient
- 클래스 멤버 변수 중 DB 컬럼과 매핑하고 싶지 않은 멤버 변수에 추가하여 매핑 대상에서 제외할 수 있다.
'📚 Spring > Spring JPA' 카테고리의 다른 글
[Spring JPA #6] Fetch (0) | 2020.07.15 |
---|---|
[Spring JPA #5] 엔티티 상태와 Cascade (0) | 2020.07.14 |
[Spring JPA #4] 관계 맵핑 (0) | 2020.06.28 |
[Spring JPA #3] Entity 매핑 및 Value 타입 (0) | 2020.06.27 |
[Spring JPA #1] JPA 및 ORM 이란? (0) | 2020.06.22 |