>  기사  >  Java  >  JPA에서 버전 관리를 사용하여 복합 기본 키를 생성하고 처리하는 방법은 무엇입니까?

JPA에서 버전 관리를 사용하여 복합 기본 키를 생성하고 처리하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-01 08:05:02429검색

How to Create and Handle Composite Primary Keys with Versioning in JPA?

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

버전 관리가 필요한 데이터를 관리할 때 다음으로 구성된 복합 기본 키를 생성해야 하는 경우가 많습니다. 식별자와 버전 번호. 이를 통해 다양한 버전의 중복 항목을 생성할 수 있습니다.

JPA에서 이 시나리오를 구현하려면 두 가지 기본 접근 방식, 즉 Embedded 클래스를 사용하고 @IdClass 주석을 사용하는 것이 있습니다.

방법 1: 임베디드 클래스

  • 원하는 기본 키 속성(@Column, @JoinColumn 등)을 사용하여 임베디드 클래스를 생성합니다.
  • 엔티티 클래스를 @EmbeddedId 주석을 달고 Embedded 클래스를 참조합니다.

예:

<code class="java">@Entity
public class YourEntity {
    @EmbeddedId
    private MyKey myKey;

    @Column(name = "ColumnA")
    private String columnA;

    // getters and setters
}

@Embeddable
public class MyKey implements Serializable {
    @Column(name = "Id", nullable = false)
    private int id;

    @Column(name = "Version", nullable = false)
    private int version;

    // getters and setters
}</code>

방법 2: @IdClass 주석

  • 복합 키를 나타내는 원하는 기본 키 속성이 있는 클래스를 생성합니다.
  • Entity 클래스에 @IdClass 주석을 추가하고 복합 키 클래스를 지정합니다.
  • 사용 복합 키 클래스 내의 두 기본 키 속성 모두에 @Id 주석을 추가합니다.

예:

<code class="java">@Entity
@IdClass(MyKey.class)
public class YourEntity {
   @Id
   private int id;
   @Id
   private int version;

}

public class MyKey implements Serializable {
   private int id;
   private int version;
}</code>

이 두 접근 방식 모두 생성 및 JPA에서 복합 기본 키를 처리하여 여러 버전이나 중복이 있는 데이터를 관리할 수 있습니다.

위 내용은 JPA에서 버전 관리를 사용하여 복합 기본 키를 생성하고 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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