>  기사  >  Java  >  JPA에서 데이터 버전을 관리하기 위해 복합 기본 키를 어떻게 사용할 수 있습니까?

JPA에서 데이터 버전을 관리하기 위해 복합 기본 키를 어떻게 사용할 수 있습니까?

DDD
DDD원래의
2024-10-30 16:44:25446검색

How can composite primary keys be used to manage data versions in JPA?

JPA에서 복합 기본 키 생성 및 처리

엔티티 내의 데이터 버전을 관리하기 위해 복합 기본 키를 생성하면 버전 번호를 기반으로 한 항목입니다. 다음 구현을 고려하십시오.

@Entity
public class YourEntity {
    @EmbeddedId
    private MyKey id;
    private String columnA;
    // Getters and setters omitted for brevity
}

@Embeddable
public class MyKey implements Serializable {
    private int id;
    private int version;
    // Getters and setters omitted for brevity
}

이 접근 방식을 사용하면 ID 및 버전 필드가 모두 복합 기본 키를 형성합니다. 이를 통해 각 데이터 레코드에 대해 여러 버전을 생성할 수 있습니다.

Entity 1: id = 1, version = 0, columnA = "Data Entry 1"
Entity 2: id = 1, version = 1, columnA = "Updated Data Entry 1"

복합 기본 키를 정의하는 대체 방법은 @IdClass 주석을 사용하는 것입니다.

@Entity
@IdClass(MyKey.class)
public class YourEntity {
    @Id
    private int id;
    @Id
    private int version;
    private String columnA;
    // Getters and setters omitted for brevity
}

public class MyKey implements Serializable {
    private int id;
    private int version;
    // Getters and setters omitted for brevity
}

이 경우, MyKey 클래스는 기본 키 클래스 역할을 하며 그 안의 id 및 version 필드는 모두 @Id로 주석 처리됩니다.

@EmbeddedId 또는 @IdClass 주석을 활용하여 JPA는 복합 기본 키를 효과적으로 관리할 수 있습니다. 단일 엔터티 내에서 데이터 버전의 저장 및 검색을 촉진합니다.

위 내용은 JPA에서 데이터 버전을 관리하기 위해 복합 기본 키를 어떻게 사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.