JVM/JPA

@Column

kyoulho 2023. 6. 11. 20:50

객체 필드를 테이블 컬럼에 매핑하는데 사용되는 애노테이션이다.

@Column을 생략하게 되면 기본값이 적용되는데, 자바 기본 타입일 때는 nullable 이 false가 된다.

 

속성 기능 기본값
name 필드와 매핑할 테이블의 컬럼이름 필드 이름
insertable 엔티티 저장 시 이 필드도 같이 저장한다. false옵션은 읽기 전용일 때 사용한다. true
updatable 엔티티 수정 시 이 필드도 같이 저장한다. false옵션은 읽기 전용일 때 사용한다. true
table 하나의 엔티티를 두 개 이상의 테이블에 매핑할 때 사용. 지정한 필드는 다른 테이블에 매핑할 수 있다. 현재 클래스가 매핑된 테이블
nullable null 값의 허용 여부를 설정한다. true
unique 한 컬럼에 유니크 제약조건을 걸 때 사용한다.
두 컬럼 이상 사용시는 @Table.uniqueConstraints를 사용한다.
 
columnDefinition
(DDL)
데이터베이스 컬럼 정보를 직접 줄 수 있다.  
length(DDL) 문자 길이 제약조건, String 타입에만 사용한다. 255
precision,scale
(DDL)
BigDecimal, BigInteger 타입에서 사용한다.
presicion은 소수점을 포함한 전체 자릿수를, scale은 소수의 자릿수다. 
double,float 타입에는 적용되지 않는다. 아주 큰 숫자나 정밀한 소수를 다루어야 할 때만 사용한다.
precision = 19
scale = 2
728x90

'JVM > JPA' 카테고리의 다른 글

@Temporal  (0) 2023.06.11
@Enumerated  (0) 2023.06.11
JPA 키 생성 전략  (0) 2023.06.10
@Entity  (0) 2023.06.10
@Table  (0) 2023.06.10