了解自動遞增表ID 的@Id 和@GenerateValue(strategy = GenerationType.IDENTITY) 註解
Java Persistence API 中(JPA) ,@Id 註解將欄位標記為實體的主鍵。 @GenerateValue 註解指定主鍵值是如何產生的。常用的策略是 GenerationType.IDENTITY,它涉及依賴資料庫的自動遞增功能。
為什麼要用這些註解?
這些註解有幾個好處:
用法範例
以下程式碼範例說明如何使用@Id 和 @GenerateValue(strategy = GenerationType.IDENTITY) 註解:
@Entity public class Author { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Integer id; private String name; private String address; }
在此範例中,id 欄位同時使用@Id 和@Id 進行註解 @GenerateValue(strategy = GenerationType.IDENTITY),表示為主鍵,應自增。
GenerationType.IDENTITY 與其他類型
GenerationType .IDENTITY 是可用於 @GenerateValue 註解的幾種策略類型之一。其他類型包括:
要使用的適當類型取決於所使用的特定資料庫和要求應用程式的。
擴充域的必要性Class
擴充Domain抽象類別的必要性取決於特定的應用需求。域類別通常為領域模型內的實體提供通用功能和行為。在給定的範例中,擴展 Domain 類別似乎沒有必要,因為 Author 類別不需要任何特定的域相關功能。
以上是`@Id` 和 `@GenerateValue(strategy = GenerationType.IDENTITY)` 註解如何在 JPA 中產生自增 ID?的詳細內容。更多資訊請關注PHP中文網其他相關文章!