티스토리 뷰



JPA에서는 엔티티 데이터에 접근하는 방식을 지정할 수 있습니다.


필드 접근 방식과 프로퍼티 접근 방식이 있습니다.


필드 접근 방식은 말 그대로, 변수에 직접 접근하는 것입니다. 이는 private 여도 접근할 수 있습니다.

프로퍼티 접근 방식은 익숙한 형태로 getter 를 사용하는 방식입니다.


예제 소스코드의 형태 처럼 적용할 수 있습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.util.Date;
import lombok.Data;
import javax.persistence.*;
 
@Entity
@Data
@Access(AccessType.FIELD)
//@Access(AccessType.PROPERTY)
public class Article {
    
    @Id
    @GeneratedValue
    int id;
    String subject;
    
    @Column(length = 100000000)
    String content;
    
    Date regDate;
    Date updDate;
}
 
cs


@Access가 존재하지 않을 경우에는 @Id의 위치에 따라 Field 타입 Property 타입을 결정합니다.

@Id가 필드에 있을 경우에는 필드 접근 방식으로, getter를 직접 작성하여, getter위에 @Id를 위치할 경우에는 프로퍼티 방식으로 접근합니다.


필드별로 혼용도 가능합니다.


댓글