JPA架構
JPA(Java持久性API)是存儲業務實體關聯的實體的來源。它顯示了如何定義一個麵向普通Java對象(POJO)作為一個實體,以及如何與管理關係實體。
類級彆架構
下圖顯示了JPA的類的層次結構。它顯示核心類和JPA接口。
下表描述了每個在上述架構的顯示單元。
單元 | 描述 |
---|---|
EntityManagerFactory | 這是一個EntityManager的工廠類。它創建並管理多個EntityManager實例。 |
EntityManager | 這是一個接口,它管理的持久化操作的對象。它的工作原理類似工廠的查詢實例。 |
Entity | 實體是持久性對象是存儲在數據庫中的記錄。 |
EntityTransaction | 它與EntityManager是一對一的關係。對於每一個EntityManager,操作是由EntityTransaction類維護。 |
Persistence | 這個類包含靜態方法來獲取EntityManagerFactory實例。 |
Query | 該接口由每個JPA供應商,能夠獲得符合標準的關係對象。 |
上述的類和接口用於存儲實體到數據庫的一個記錄。幫助程序員通過減少自己編寫代碼將數據存儲到數據庫中,使他們能夠專注於更重要的業務活動代碼,如 數據庫表映射的類編寫代碼。
JPA類關係
在上述體係結構中,類和接口之間的關係屬於javax.persistence包。下圖顯示了它們之間的關係。
-
EntityManagerFactory和EntityManager的關係是1對多。這是一個工廠類EntityManager實例。
-
EntityManager和EntityTransaction之間的關係是1對1。對於每個EntityManager操作,隻有一個EntityTransaction實例。
-
EntityManager和Query之間的關係是1對多。查詢數眾多可以使用一個EntityManager實例執行。
-
EntityManager實體之間的關係是1對多。一個EntityManager實例可以管理多個實體。