Everyday Dev System

Entity Class에 활용 어노테이션 - 1주차 4강 본문

내배캠 주요 학습/JPA 심화

Entity Class에 활용 어노테이션 - 1주차 4강

chaeyoung- 2023. 7. 30. 22:20

 

 

1. @Transient
을 entity 클래스 내에 멤버 변수에 기재할 경우
칼럼으로 맵핑되지 않는 멤버 변수

2. @Column
@Entity 어노테이션을 기재할 경우 생략 가능.
자동으로 @Column이 붙음. 
속성 값을 제한할 때에만 사용.
@Column(name="id", nullable= false)


3. @Embeddable
이 어노테이션이 달린 클래스가 다른 엔티티 클래스의 일부로 포함가능.
    @Embedded
    @AttributeOverrides({
            @AttributeOverride(name="city", 
                 column= @Column(name = "home_city"))
    })
    private Address address;

이렇게 쓰면 city 칼럼명만 변경하여 칼럼이 생성되고, 
나머지는 Address 멤버 변수명 그대로 칼럼명 지정됨.


4. @Enumerated

    @Enumerated(EnumType.STRING)
    private Type type;
    
    public enum Type {
        PUBLIC, PRIVATE;
    }