article thumbnail image
Published 2022. 6. 30. 15:50

1. 필드와 컬럼 맵핑

@Entity 
public class Member { 
 @Id 
 private Long id; 
 @Column(name = "name") 
 private String username; 
 private Integer age; 
 @Enumerated(EnumType.STRING) 
 private RoleType roleType; 
 @Temporal(TemporalType.TIMESTAMP) 
 private Date createdDate; 
 @Temporal(TemporalType.TIMESTAMP) 
 private Date lastModifiedDate; 
 @Lob 
 private String description; 
 //Getter, Setter… 
}

 

2. 매핑 어노테이션 정리

 

3. @Column

4. @Enumerated

1)  EnumType.ORDINAL

 

2)  EnumType.ORDINAL

 

 

4. @Temporal

날짜 타입(java.util.Date, java.util.Calendar)을 매핑할 때 사용
참고: LocalDate, LocalDateTime을 사용할 때는 생략 가능(최신 하이버네이트 지원)

5. @Lob

데이터베이스 BLOB, CLOB 타입과 매핑 
• @Lob에는 지정할 수 있는 속성이 없다. 
• 매핑하는 필드 타입이 문자면 CLOB 매핑, 나머지는 BLOB 매핑
• CLOB: String, char[], java.sql.CLOB 
• BLOB: byte[], java.sql. BLOB 

 

 

6. @Transient

• 필드 매핑X 
• 데이터베이스에 저장X, 조회X 
• 주로 메모리상에서만 임시로 어떤 값을 보관하고 싶을 때 사용
• @Transient
      private Integer temp; 

 

 

 

출처 : 김영한, 자바 ORM 표준 JPA 프로그래밍 - 기본편

'JPA' 카테고리의 다른 글

요구사항 분석과 기본 매핑  (0) 2022.07.01
기본키 매핑  (0) 2022.06.30
엔티티 매핑  (0) 2022.06.30
영속성 컨텍스트  (0) 2022.06.29
JPA 설정하기  (0) 2022.06.29
복사했습니다!