728x90
반응형
어노테이션 | 설명 |
@Entity | 클래스를 엔티티로 선언 ( db에 테이블을 만들 것이다. ) |
@Table | 엔티티와 매핑할 테이블을 지정 ( 테이블 명칭 지정 ) |
@id | 테이블의 기본키에 사용할 속성을 지정 ( PK ) |
@GeneratedValue | 키 값을 생성하는 전략 명시 ( 키 생성 방법 ) |
@Column | 필드와 컬럼 매핑 ( 컬럼 명칭 정하기 ) |
@Lob | BLOB, CLOB 타입 매핑 ( Binary large object, Charactor large object. db에서 기록할 때 다른 곳에 저장해두고 주소만 지정 ) |
@CreationTimestamp | insert시 시간 자동 저장 |
@UpdateTimestamp | update시 시간 자동 저장 |
@Enumerated | enum 타입 매핑 ( 컴퓨터가 알아서 인덱스로 확인 ) |
@Transient | 해당 필드 데이터베이스 매핑 무시 ( 건너뛰기 ) |
@Temporal | 날짜 타입 매핑 |
@CreateDate | 엔티티가 생성되어 저장될 때 시간 자동 저장 |
@LastModifiedDate | 조회한 엔티티의 값을 변경할 때 시간 자동 저장 |
@Entity 어노테이션은 클래스의 상단에 입력하면 JPA에 엔티티 클래스라는 것을 알려준다.
Entity 클래스는 반드시 기본키를 가져야 한다.
@GeneratedValue 어노테이션을 통한 기본키를 생성하는 전략은 총 4가지이다.
▪️ GenerationType.AUTO (default) : JPA 구현체가 자동으로 생성 전략 결정
▪️ GenerationType.IDENTITY : 기본키 생성을 데이터베이스에 위임
▪️ GenerationType.SEQUENCE : 데이터베이스 시퀀스 오브젝트를 이용한 기본키 생성 - 순서대로
▪️ GenerationType.TABLE : 키 생성용 테이블 사용. @TableGenerator 필요
728x90
반응형
'Back-End > Spring Boot' 카테고리의 다른 글
Spring Boot - 쿼리 메소드 (0) | 2022.07.22 |
---|---|
Spring Boot - Repository 설계하기 (0) | 2022.07.22 |
Spring Boot - Thymeleaf (0) | 2022.07.21 |
Spring Boot - JPA (0) | 2022.07.21 |
Spring Boot - 어노테이션 종류 (0) | 2022.07.20 |
댓글