JPA 對映雙向多對多關聯關係

2021-08-15 03:27:16 字數 1246 閱讀 3062

不維護關聯關係的一端

@entity

@table(name="item")

public class item

public void setid(integer id)

public string getitemname()

public void setitemname(string itemname)

public setgetitems()

public void setitems(setitems)

}

維護關聯關係的一端

@entity

@table(name="category")

public class category

public void setid(integer id)

public string getcategoryname()

public void setcategoryname(string categoryname)

//使用@manytomany 來對映多對多關聯關係

//使用@jointable 來對映中間表

指向中間表的名字

對映當前類所在的表在中間表的外來鍵

name指定外來鍵列的列名

referencedcolumnname指定外來鍵列關聯當前表的哪一列

對映關聯的類在中間表的外來鍵

@manytomany

@jointable(name="category_item",

joincolumns=,

inversejoincolumns=)

public setgetcategories()

public void setcategories(setcategories)

}

@tset

public class jpatest 

@after

public void destroy()

//對於關聯的集合物件,預設使用懶載入策略

//獲取維護關聯關係的一端還是不維護關聯關係的一端,sql語句相同

@test

public void testmanytomanyfind()

//多對多的儲存

@test

public void testmanytomanypersist()

}

JPA雙向一對多關聯關係

用法和單向一對多和單向多對一用法是一樣的,需要說的就是讓那一邊來維護關聯關係,如果不考慮這個也沒什麼關係,考慮的話可以對效能有一點提公升。joincolumn name customer id public setgetorders 預設兩邊維護關聯關係 若先儲存n的一端,再儲存1的一端,則兩邊在傳...

Hibernate對映多對多關聯關係

前邊我們講過了hibernate如何在域模型和關係資料模型中對映一對一的關聯關係,分為外來鍵方式和主鍵方式兩種,外來鍵方式其實就是和雙向一對多差不多,不同的是在多的一方需要為外來鍵新增乙個unique唯一的約束。主鍵方式其實就是將兩方 的主鍵一一對應,且需要將其中一方的主鍵的生成方式設定成forei...

JPA對映雙向一對多的關聯關係

一的一方 123 4567 891011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 4041 4243 4445 4647 4849 5051 5253 5455 5657 5859 6061 6263...