컴퓨터 언어/Java

JPA - 주요 엔티티 12가지

개발자 뱅 2023. 8. 29. 21:14
반응형

주요 엔티티 12가지

엔티티 상세 파라미터
@Entity 해당 클래스가 JPA의 엔티티임을 선언 없음
@Table 엔티티와 데이터베이스 테이블 간의 매핑 정보를 설정 name: 매핑할 테이블의 이름을 지정
schema: 테이블이 속한 스키마를 지정
catalog: 테이블이 속한 카탈로그를 지정
uniqueConstraints: 유니크 제약 조건을 정의
@Id 엔티티의 식별자(primary key)를 지정 없음
@GeneratedValue 식별자 값을 자동으로 생성하는 방법을 지정 strategy: 식별자 값을 생성하는 전략을 선택 (기본값: GenerationType.AUTO)
GenerationType.IDENTITY: 데이터베이스에 의해 자동으로 생성
GenerationType.SEQUENCE: 시퀀스를 이용하여 생성
GenerationType.TABLE: 키 생성용 테이블을 사용
GenerationType.AUTO: 구현체가 자동으로 선택
@Column: 엔티티의 필드와 데이터베이스 컬럼 간의 매핑 정보를 설정 name: 매핑할 데이터베이스 컬럼의 이름을 지정
length: 문자열 컬럼의 길이를 지정
nullable: 컬럼이 NULL 값을 허용하는지 여부를 지정
unique: 컬럼의 값이 고유해야 하는지 여부를 지정
updatable: 컬럼의 값을 업데이트할 수 있는지 여부를 지정
insertable: 컬럼의 값을 삽입할 수 있는지 여부를 지정
columnDefinition: 데이터베이스 컬럼의 정의를 직접 지정
@Basic 엔티티의 필드에 기본적인 매핑을 설정 fetch: 데이터를 로딩하는 전략 (기본값: FetchType.EAGER)
FetchType.EAGER: 즉시 로딩
FetchType.LAZY: 지연 로딩

 

반응형

 

@ManyToOne / @OneToMany 다대일 및 일대다 관계를 설정 없음
@OneToOne / @ManyToMany 일대일 및 다대다 관계를 설정 없음
@JoinColumn 외래 키(Foreign Key)를 매핑 name: 외래 키 컬럼의 이름을 지정
referencedColumnName: 외래 키가 참조하는 대상 컬럼의 이름을 지정
@Enumerated Java Enum 타입을 데이터베이스 컬럼과 매핑 value: Enum 타입 매핑의 방법
(기본값: EnumType.ORDINAL)
EnumType.ORDINAL: Enum 값의 순서를 데이터베이스에 저장
EnumType.STRING: Enum 값의 이름을 데이터베이스에 저장
@Temporal 날짜와 시간 필드의 매핑 정보를 설정 value: 날짜와 시간 필드의 매핑 방식을 선택
(기본값: TemporalType.TIMESTAMP)
TemporalType.DATE: 날짜만 저장
TemporalType.TIME: 시간만 저장
TemporalType.TIMESTAMP: 날짜와 시간 모두 저장
@Transient 특정 필드를 엔티티의 컬럼과 매핑하지 않고 무시 없음



반응형