一對一關係對映分為單向一對一和多向一對一。在配置關係時必須確立控制方和被控制方。單向和雙向的區別為看主控方和被控方兩邊是否都配置了@onetoone,如果都有為雙向一對一,反之為單向。
雙向一對一關聯有兩條規則:
/**
* person屬於關係維護方
* */
@entity
@table(name="t_one_person")
public class person
/**
* 為關係被維持方
* */
@entity
@table(name="t_one_idcard")
public class idcard
junit測試:
public class testjpa
@test
public void add()
/*** 關閉entitymanage***ctory
*/@after
public void after()
}}
在jpa規範中:
1<--->m 多的一方位關係維護端,關係維護端負責外來鍵記錄的更新.關係被維護端是沒有權利更新外來鍵字段的.
/**
*關係被維護方
*/@entity
@table(name="t_order")
public class order
/**
* *關係維護方
*在jpa規範中:
* 1<--->m 多的一方位關係維護端,關係維護端負責外來鍵記錄的更新.關係被維護端是沒有權利更新外來鍵字段的.
*/@entity
@table(name="t_orderitem")
public class orderitem ,fetch=fetchtype.eager,optional=false)
@joincolumn(name="order_id")
private order order;
//省略get/set方法..
}
junit測試:
public class testjpa
@test
public void add()
/*** 關閉entitymanage***ctory
*/@after
public void after()
}}
使用之間表,分為兩個一對多
junit測試:@entity
@table(name="t_many_student")
public class student
/***
* 解除老師和學生的關係
* */
public void removeteacher(teacher teacher)
} //省略get/set方法...
}
@entity
@table(name="t_many_teacher")
public class teacher
public class testjpa
/***
* 新增老師和學生
* */
@test
public void add()
/***
* 建立老師和學生的關係
* */
@test
public void buildts()
/***
* 解除老師和學生的關係
* */
@test
public void deletets()
/***
*刪除老師
* */
@test
public void deleteteacher()
/***
*刪除學生
* */
@test
public void deletestudent()
/*** 關閉entitymanage***ctory
*/@after
public void after()
}}
/**
* 復合主鍵必須要實現serializable,無參構造,必須重寫hashcode,equals.
* @author hh
* */
@embeddable//用於實體裡面的時候,告訴jpa實現產品只使用這個復合主鍵類的屬性
public class airlinepk implements serializable
@entity
public class airline
junit測試:
public class testjpa
@test
public void add()
/*** 關閉entitymanage***ctory
*/@after
public void after()
}}
JPA實體關聯關係對映之概述
一 簡介 首先來說關聯關係是物件導向分析,物件導向設計最重要的部分,jpa是完全可以通過對映來簡化資料持久化到資料,和 hibernate 一樣,jpa 的關聯關係也分為兩種,一種是單向關聯,一種是雙向關聯 單向關聯 只需要單向訪問關聯端,比如說 我們只能通過某一學期訪問這學期的課程,而不能通過課程...
JPA實體註解
entity name entityname 必須,name為可選,對應資料庫中一的個表 table name catalog schema 可選,通常和 entity配合使用,只能標註在實體的class定義處,表示實體對應的資料庫表的資訊 name 可選,表示表的名稱。預設地,表名和實體名稱一致,...
JPA實體註解
jpa實體註解用例專案位址 參考部落格 關係的擁有方 即many的一方 負責關係的維護,在擁有方建立外來鍵會用到joincolumn。列舉使用manytoone進行實體註解,如建立乙個分類樹形結構的實體。當前實體中manytoone與onetomany對應的實體都是本身 author lx enti...