JPA對象關係映射
對象關係映射(ORM)是一種功能,用於通過將對象狀態映射到數據庫列來開發和維護對象和關係數據庫之間的關係。 它能夠輕鬆處理(或執行)各種數據庫操作,如插入,更新,刪除等。
ORM框架
以下是在ORM機制上運行的一些框架 -
- Hibernate (參考:http://www.yiibai.com/hibernate )
- TopLink
- ORMLite
- iBATIS
- JPOX
映射方向
映射方向可分爲兩個部分: -
- 單向關係 - 在這種關係中,只有一個實體可以將屬性引用到另一個實體。它僅包含一個側面,由於指定如何更新可以在數據庫中進行。
- 雙向關係 - 這種關係包含兩邊 - 既包含一個側面,也包含另一個側面。 所以這裏每個實體都有一個關係字段或將該屬性引用到其他實體。
映射類型
以下是各種ORM映射類型 -
- 一對一 - 此關聯由
[@OneToOne](https://github.com/OneToOne "@OneToOne")
註釋表示。在這裏,每個實體的實例與另一個實體的單個實例相關。 - 一對多 - 此關聯由
[@OneToMany](https://github.com/OneToMany "@OneToMany")
註釋表示。 在這種關係中,一個實體的實例可以與另一個實體的多個實例相關聯。 - 多對一 - 此映射由
[@ManyToOne](https://github.com/ManyToOne "@ManyToOne")
註釋定義。 在這種關係中,一個實體的多個實例可以與另一個實體的單個實例相關聯。 - 多對多 - 此關聯由
[@ManyToMany](https://github.com/ManyToMany "@ManyToMany")
註釋表示。 在這種關係中,一個實體的多個實例可能與另一個實體的多個實例有關。 在這個映射中,任何一方都可以成爲所有者方。
我們將在本教程後面的章節中分別介紹每個映射類型。