JPA 註解映射將 Java 物件對應到關聯式資料庫表,簡化了與資料庫互動。實體註解標記持久性物件(@Entity),欄位註解指定資料庫列映射(@Column、@Lob),關聯映射註解表示實體間關係(@OneToOne、@OneToMany、@ManyToMany)。例如,Employee 和 Department 實體中,@OneToOne 表示一對一關係,@OneToMany 表示一對多關係。
Java Persistence API (JPA) 中的註解映射:物件-關聯映射
Java Persistence API (JPA) 提供了一種使用註解將Java 物件對應到關聯式資料庫表的方法。這種映射被稱為物件-關係映射(ORM),它簡化了與資料庫互動的過程。
實體註解
實體註解用於標記一個 Java 類,指示它是一個持久物件。常用的實體註解包括:
@Entity
:指示一個類別是 JPA 實體。 @Id
:表示一個持久欄位是實體的主鍵。 欄位註解
欄位註解用於指定欄位的資料庫列對映。常用的欄位註解包括:
@Column
:指定欄位的資料庫列名、類型和其他屬性。 @Lob
:指示欄位是一個大物件(LOB),如文字或圖像。 關係映射註解
關係映射註解用於表示兩個實體之間的關係。常用的關係映射註解包括:
@OneToOne
:一對一關係。 @OneToMany
:一對多關係式。 @ManyToMany
:多對多關係。 實戰案例
假設我們有一個Employee
實體和一個Department
實體,它們有一個以下關係:每個部門可以有多個員工,每個員工只能屬於一個部門。
@Entity public class Employee { @Id private Long id; private String name; @OneToOne private Department department; } @Entity public class Department { @Id private Long id; private String name; @OneToMany(mappedBy = "department") private Set<Employee> employees; }
在前面的程式碼中,@OneToOne
註解指示Employee
和Department
之間存在一對一關係,一個員工對應一個部門。 @OneToMany
註解指示 Department
和 Employee
之間存在一對多關係,一個部門對應多個員工。
以上是Java Persistence API(JPA)中的註解如何映射物件-關係映射?的詳細內容。更多資訊請關注PHP中文網其他相關文章!