Rumah  >  Artikel  >  Java  >  Bagaimana untuk Mencipta dan Mengendalikan Kunci Utama Komposit dengan Versi dalam JPA?

Bagaimana untuk Mencipta dan Mengendalikan Kunci Utama Komposit dengan Versi dalam JPA?

DDD
DDDasal
2024-11-01 08:05:02431semak imbas

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

Mencipta dan Mengendalikan Kunci Utama Komposit dalam JPA

Apabila menguruskan data yang memerlukan versi, selalunya perlu mencipta kunci utama komposit yang terdiri daripada pengecam dan nombor versi. Ini membolehkan penciptaan entri pendua dengan versi yang berbeza.

Untuk melaksanakan senario ini dalam JPA, terdapat dua pendekatan utama: menggunakan kelas Terbenam dan menggunakan anotasi @IdClass.

Kaedah 1: Kelas Terbenam

  • Buat kelas Terbenam dengan atribut kunci utama yang diingini (@Lajur, @JoinColumn, dll.).
  • Tandakan kelas Entiti dengan @EmbeddedId anotasi dan rujuk kelas Embedded.

Contoh:

<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>

Kaedah 2: @IdClass Anotasi

  • Buat kelas dengan atribut kunci utama yang diingini, mewakili kunci komposit.
  • Anotasi kelas Entiti dengan anotasi @IdClass dan nyatakan kelas kunci komposit.
  • Gunakan anotasi @Id pada kedua-dua atribut kunci utama dalam kelas kunci komposit.

Contoh:

<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>

Kedua-dua pendekatan ini membenarkan penciptaan dan pengendalian kunci utama komposit dalam JPA, membolehkan pengurusan data dengan berbilang versi atau pendua.

Atas ialah kandungan terperinci Bagaimana untuk Mencipta dan Mengendalikan Kunci Utama Komposit dengan Versi dalam JPA?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn