@Id, Primary Key (PK)

Hyun·2023년 7월 29일
0

Spring

목록 보기
20/38

@Entity
@Getter @Setter
public class Member {

    @Id
    @GeneratedValue
    @Column(name = "member_id")
    private Long id;

    private String name;//회원명

    @Embedded //내장 타입을 나타냄
    private Address address;//주소

    @OneToMany(mappedBy = "member") 
    private List<Order> orders = new ArrayList<>();//회원의 주문 리스트
}

본인

위 코드의 primary key가 @Id가 붙은 id 필드야?

ChatGPT

네, 맞습니다. 주어진 코드에서 @Id 어노테이션이 id 필드에 붙어 있으므로, id 필드가 해당 엔티티의 주요 식별자(primary key)로 사용됩니다.

@Id 어노테이션은 JPA에서 엔티티 클래스의 주요 식별자(primary key)를 지정하는데 사용됩니다. 해당 어노테이션이 붙은 필드는 데이터베이스 테이블에서 기본 키(primary key) 컬럼으로 매핑되어 사용됩니다.

따라서 Member 엔티티의 id 필드는 주요 식별자로 사용되며, 해당 필드를 통해 회원 데이터를 고유하게 식별할 수 있습니다. @GeneratedValue 어노테이션을 함께 사용하면, 데이터베이스가 자동으로 기본 키 값을 생성해주므로 개발자가 직접 식별자 값을 지정할 필요가 없습니다. 즉, id 필드의 값은 자동으로 생성되어 고유한 값을 갖게 됩니다.

profile
better than yesterday

0개의 댓글