@Column -> 컬럼 매핑
- name -> 필드와 매핑할 테이블의 컬럼 이름
- insertable,updatetable -> 등록, 변경 가능 여부
- nullable(DDL) -> null 값의 허용여부를 설정
- unique(DDL) -> @Table의 uniqueConstraints와 같지만 한 컬럼에 간단히 유니크 제약조건을 걸 때 사용
- columnDefinition(DDL) -> DB 컬럼 정보를 직접 줄 수 있다.
- length(DDL) -> 문자 길이 제약조건, String 타입에만 사용
- precision, scale(DDL) -> BigDecimal 타입에서 사용한다.(Long도 사용 가능),
precision은 소수점을 포함한 전체 자릿수를,
scale은 소수의 자릿수다.
@Temporal -> 날짜 타입 매핑 ------ LocalDateTime 으로 대체 가능
@Enumerated -> enum 타입 매핑
// enum이 생성되있다고 가정
@Enumerated(EnumType.STRING)
private RoleType roleType;
기본타입이 ORDINAL이라 STRING으로 변경
ORDINAL -> enum 순서를 DB에 저장
STRING -> enum 이름을 DB에 저장
@Lob -> BLOB,CLOB 매핑
- 속성이 없다.
- 매핑하는 필드 타입이 문자면 CLOB, 나머지는 BLOB 매핑
- CLOB : String, char[], java.sql.CLOB
- BLOB : byte[], java.sql.BLOB
@Transient -> 특정 필드를 컬럼에 매핑하지 않음(매핑 무시)
- 필드 매핑 X
- DB에 저장 X, 조회 X
- 주로 메모리상에서만 임시로 어떤 값을 보관하고 싶을 때 사용
'Back-End > Spring' 카테고리의 다른 글
[spring] 예외처리? Exception Handling? (0) | 2022.08.17 |
---|---|
[JPA] JPA Repository 메소드로 쿼리없이 코딩 (0) | 2022.08.09 |
[JPA] ddl-auto 주의 및 실무 적용 (0) | 2022.08.01 |
[spring boot] 간단한 방명록 만들기 [2편] (0) | 2022.06.16 |
[spring boot] @Query 어노테이션 (0) | 2022.06.14 |