首頁 > Java > java教程 > JPA中如何使用組合主鍵來管理資料版本?

JPA中如何使用組合主鍵來管理資料版本?

DDD
發布: 2024-10-30 16:44:25
原創
533 人瀏覽過

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 和 version 欄位都形成複合主鍵。這使得可以為每個資料記錄建立多個版本:

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板