-
<Spring JPA> 1.10 필드와 컬럼매핑JPA 2020. 4. 18. 19:10
컬럼을 매핑하는 어노테이션은 다음과 같은 것들이 있다.
@Column 이 필드가 이 컬럼이다 라고 알려준다.
name 값을 통해서 이름을 지정해주고, insertable, updatable 을 통해 해당 엔티티값이 변경되거나 등록되는 경우 등록 변경을 할지 지정할 수 있다. nullable 도 설정하고, unuque 값도 지정할 수 있다. 하지만 필드에 @Column 을 통해 설정하면 유니크키값이름 지정이 안되므로 추천하지 않는다. 그리고 length 도 지정이 가능하다.
@Enumerated 는 자바의 enum 을 매핑할 때 사용한다. 크게 ORDINAL 와 STRING 설정이 있는데, 무조건 STRING 을 사용한다고 보면 된다. ORDINAL 을 사용하는 경우 enum 의 순서값을 저장하는데, 음... 순서가 뒤죽박죽 될 염려가 없고 아무래도 상관없다면 쓰겠지만 내 생각엔 쓸 일이 없다.
@Temporal 은 날짜 타입을 매핑해준다.
Date 나 Calendar 를 쓸 때 사용하는데 LocalDate 나 LocalDateTime 을 사용할 때는 생략이 가능하다.
@Lob 은 데이터베이스의 BLOB과 CLOB 을 매핑할 때 쓴다. 사실 써 본적은 없다.
@Transient
영어로 일시적인, 덧없는 이라는 뜻에 걸맞게 엔티티에는 있지만 매핑하지 않고, 저장 조회를 하지 않는 메모리상에만 존재하고 싶은 필드에 지정한다.
반응형'JPA' 카테고리의 다른 글
<Spring JPA> 1.12 요구사항 분석과 기본매핑 (0) 2020.04.21 <Spring JPA> 1.11 기본키 매핑 (0) 2020.04.21 <Spring JPA> 1.9 데이터베이스 스키마 자동 생성 (0) 2020.04.18 <Spring JPA> 1.8 객체와 테이블 매핑 (0) 2020.04.14 <Spring JPA> 1.7 준영속 상태 (0) 2020.04.14