JPA 概述
- Java Persistence API(Java 持久層 API):用於對象持久化的 API
- 作用:使得應用程序以統一的方式訪問持久層
(最下面是數據庫) - JPA 與 Hibernate 的什麼關係:
1)JPA 是 一個標準的接口
2)Hibernate 是 JPA 的一個實現 - Hibernate 是如何實現與 JPA 的關係的?
通過 hibernate-annotation、hibernate-entitymanager 和 hibernate-core 三個組件來實現 - JPA 包括三個方面的技術:
1)ORM JavaBean 和數據庫中的數據表建立映射關係,支持 XM 和註解兩種形式
2)JPA 的 API
3)查詢語言:JPQL,jpql 其原型就是 hibernate 的 hql
一般在實際開發中,優先考慮使用 JPA 註解,這樣更有利於程序的移植和擴展
JPA 版本
- JPA 2.0 - 此版本於 2009 年下半年發佈。以下是此版本的重要功能: -
- 它支持驗證。
- 它擴展了對象關係映射的功能。
- 它共享緩存支持的對象。
- JPA 2.1 - JPA 2.1 於 2013 年發佈,具有以下特性: -
- 它允許提取對象。
- 它爲條件更新/刪除提供支持。
- 它生成模式。
- JPA 2.2 - JPA 2.2 在 2017 年作爲維護開發而發佈。它的一些重要特性是:
- 它支持 Java 8 的日期和時間。
- 它提供了@Repeatable 註釋,當想要將相同的註釋應用到聲明或類型用法時可以使用它。
- 它允許 JPA 註釋在元註釋中使用。
- 它提供了流式查詢結果的功能,就能實現分批次查詢,避免一次返回數據過大導致OOM,什麼是 OOM?程序申請內存過大,虛擬機無法滿足我們,然後自了。
更多JPA示例項目創建或註解知識以及API可點擊此處