@매핑 어노테이션 정리
@Column
@Column은 객체 필드를 테이블의 컬럼에 매핑시켜주는 어노테이션이다.
@Enumerated
자바 enum 타입을 매핑할 때 사용 (ORDINAL 사용 X!!)
-> 만약 enum 클래스에 USER, ADMIN만 있었다면 DB에는 USER 0 , ADMIN 1로 저장되지만
새로 클래스를 수정해 GUEST, USER, ADMIN으로 변경한다면 전에 있던 DB는 그대로 유지되어
GUEST와 USER가 0으로 겹쳐버리는 경우가 발생한다.
@Temporal
참고: LocalDate, LocalDateTime을 사용할 때는 생략 가능(최신 하이버네이트 지원)
@Lob
데이터베이스 BLOB, CLOB 타입과 매핑
• @Lob에는 지정할 수 있는 속성이 없다.
• 매핑하는 필드 타입이 문자면 CLOB 매핑, 나머지는 BLOB 매핑
• CLOB: String, char[], java.sql.CLOB
• BLOB: byte[], java.sql. BLOB
@Transient
해당 필드를 영속 대상에서 제외시킬 때 사용한다.
따라서 데이터베이스에 저장하지 않고 조회하지도 않는다.
객체에 임시로 어떤 값을 보관할 목적으로 사용
Reference
https://www.inflearn.com/course/ORM-JPA-Basic/dashboard
'🍀Spring > JPA' 카테고리의 다른 글
[JPA] 다양한 연관관계 매핑 (0) | 2024.07.18 |
---|---|
[JPA] 연관관계 매핑 - 양방향 연관관계와 연관관계의 주인 (0) | 2024.07.06 |
[JPA] 연관관계 매핑 - 단방향 연관관계 (0) | 2024.07.06 |
[JPA] 기본 키 (Primary Key) 매핑 - (@Id, @GeneratedValue) (0) | 2024.07.04 |
[JPA] 엔티티 매핑 (@Entity, @Table) (0) | 2024.07.04 |