泛型:繼承關係
實現組合
聚合關聯
依賴
組合,聚合,關聯
單向一對多,單向多對一,
@onetomany(fetch = fetchtype.lazy)
@joincolumn(name = "department_id")
雙向一對多/多對一:兩邊都要配置,但是我們為了提高效能,我們會在一遍選擇放棄維權
@onetomany(fetch = fetchtype.lazy)
@joincolumn(name = "department_id")
單項多對多,
/*** @manytomany 表示多對多,為了方便記憶,我們都統一寫成懶載入
* jpa會自動建立一張中間表,名稱為: 當前實體類對應表名稱_對方實體類對應表名稱
* 中間表內有兩個外來鍵
* 其中乙個外來鍵列名稱為:當前實體類對應表名稱_id
* 另乙個外來鍵列名稱為:list集合型別的變數名稱_id
* 我們可以通過@jointable註解來指定中間表的名稱和兩個外來鍵列的名稱
* @jointable 的name表示指定中間表的名稱
* joincolumns 表示指定當前實體類對應表與中間表關聯的外來鍵列名稱
* inversejoincolumns 表示指定對方實體類對應表與中間表關聯的外來鍵列名稱
*/@manytomany(fetch = fetchtype.lazy)
@jointable(name = "user_role",
joincolumns = ,
inversejoincolumns = )
雙向多對多
兩邊實體類都需要配置,只需要交換位置就好了
單向一對一,雙向一對一
@entity
public
class
qq@entity
public
class
qqzone
JPA的七種對映關係
在實體bean中,互相之間的關係有七種,分別是如下七種 1,一對一單向 2,一對一雙向 3,一對多單向 4,一對多雙向 5,多對一單向 6,多對多單向 7,多對多雙向 大家可能發現,為什麼沒有多對一雙向呢?其實多對一的雙向,就是一對多的雙向,道理是一樣的.1.一對一單向 之間的關係的客戶和乙個位址。...
JPA的關係及配置
一方 entity public class product 不管怎麼儲存 改變persist 位置 它都會至少執行5條sql語句完成儲存功能。而完成同樣的功能,我們使用單向多對一可以優化為3條。因此,我們一般不使用單向一對多 原因就是現在外來鍵是由一方來處理,一方處理必須發出額外的update語句...
JPA的實體關係對映總結
jpa是ejb3.0中引入的實體 關係持久化模型。通常,每個實體類相當於是資料庫中的一張表,而每個物件則是表中的一條記錄。我們知道,資料庫中的表之間會存在一定的依賴,這可以通過 主外來鍵 來體現出來。物件關係對映提供了一種將物件對映到資料庫的機制 orm 其中jpa就是這樣的一種標準。有了orm,我...