-
필드와 컬럼 매핑
맵핑 어노테이션
- @Column 컬럼 매핑
- @Temporal 날짜 타입 매핑
- @Enumerated enum 타입 매핑
- @Lob BLOB, CLOB 매핑
- @Transient 특정 필드를 컬럼에 매핑하지 않음(매핑 무시)
@Column
@Enumerated
- 자바 enum 타입을 맵핑하는 경우 사용한다
- ORDINAL 은 사용하지 말자 (순서를 저장하기 때문에 실제 Enum 코드 변경시 잘못된 데이터를 바라볼 수 있음)
@Temporal
- 날짜 타입(java.util.Date, java.util.Calendar)을 매핑할 때 사용
- 참고: LocalDate, LocalDateTime 사용시 생략 가능
@Lob
- 데이터베이스 BLOB, CLOB 타입과 매핑
- @Lob에는 지정할 수 있는 속성이 없다.
- 매핑하는 필드 타입이 문자면 CLOB 매핑, 나머지는 BLOB 매핑
- CLOB: String, char[], java.sql.CLOB
- BLOB: byte[], java.sql. BLOB
@Transient
- 필드 매핑X
- 데이터베이스에 저장X, 조회X
- 주로 메모리상에서만 임시로 어떤 값을 보관하고 싶을 때 사용
- @Transient
- private Integer temp;
'개발 > Jpa' 카테고리의 다른 글
양방향 연관관계와 연관관계의 주인 (0) 2023.08.25 기본 키 매핑 방법 (0) 2023.08.25 데이터베이스 스키마 자동생성 옵션 (hibernate.hbm2ddl.auto) (0) 2023.08.25