成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Hibernate一對多,多對一,多對多,一對一關系匯總

開發 后端
向您介紹Hibernate中的一對多、多對一、一對一等重要關系,通過簡單的代碼示例展示各關系的具體配置。

Hibernate如果上手了,那么在Hibernate中的一對多,多對一,多對多,一對一這些關系,應該很快能理解.

下面就把這幾種關系簡單說一下.

本文中用到的三個實例化類分別為Customer(保存客戶基本信息),CustomerDetails(保存客戶詳細信息),CustomerBack(中間表,保存兩表之間的關聯)
對應的表功能同上.說明中的主表指Customer,子表指CustomerDetails,中間表指CustomerBack

一對多

﹤set name="CustomerDetails" table="customer_details" 
inverse="false" cascade="all" sort="unsorted" ﹥ ﹤key column="cust_Id"/﹥
﹤one to many class="com.hibernate.otm.CustomerDetails"/﹥ ﹤/set﹥

這段代碼是需要放在一對多中的主表配置中的

◆name:集合屬性的名稱(也可以理解為一對多中那個子屬性名)

◆table(可選,默認為屬性的名稱):集合表的名稱(可理解為一對多中子表的名稱)

◆inverse(可選,默認為false):標記這個集合作為雙向關聯關系中的方向的一端

◆cascade(可選:默認為none):讓操作級聯到子實體

◆sort(可選):指定集合的排序順序

其它如schema,lazy,order–by,where,outer–join,batch–size,access請參照有關書籍.

key 中的column=”cust_Id”,cust_Id并不是主表的字段,而是子表中保存主表的字段.
如主表主鍵為cust_Id,子表中為了保存主表的主鍵,也建一個cust_Id,key里的cust_Id就是指子表中的cust_Id.
one–to–many 中的class為一對多的子表實例類.

多對一

﹤many to one
    name="Customer"
    class="Customer"
    cascade="all"
    outer join="false"
    update="false"
    insert="false"
    column="cust_Id"
    not null="true"/﹥

多對一中,沒有像一對多的,而是直接用了many–to–one.這段代碼是需要放在多對一中的子表配置中的(即CustomerDetails的配置中)

◆outer–join:為外鏈接

◆update,insert:指定對應的字段是否在用于UPDATE和/或INSERT的SQL語句中包含.

◆column:關聯的字段名.(多對主類對應的字段名)

◆not–null:是否為null.

多對多

﹤set name="CustomerBack" table="customer_back" cascade="all"﹥ ﹤key column="cust_Id"/﹥ ﹤many to many class="CustomerDetails" column="custD_id"/﹥ ﹤/set﹥

多對多的配置與一對多有點類似.這段代碼放的位置也是與一對多的代碼放的位置一樣.
多對多關系中,多采用中間表來關聯兩個有多多關系的表的.如Customer與CustomerDetails存在多對多的關系,那么往往是用另外一個表如CustomerBack表來保存它們的關系的,也就是中間表.

◆name:屬性的名稱(可理解為中間表的名稱)

◆table:表的名稱(可理解為中間表的表名稱)

◆key 里的cust_Id,是指中間表的cust_Id,為了保存Customer與CustomerDetails的關系,中間表中分別建了cust_Id(Customer的主鍵)與custD_Id(CustomerDetails的主鍵)

◆many–to–many中的Class是指多對多中的另一個實例化類,column是指CustomerDetails與中間表關聯的字段名.這里是指中間表的

◆custD_Id,不能理解為CustomerDetails的主鍵.

一對一

﹤one to one name="CustomerDetails" class="CustomerDetails" cascade="all" /﹥
一對一的關系更簡單.
在Customer表的配置中放上這段代碼就行了.

◆name:屬性名稱

◆class:關聯的實例化類名

 

【編輯推薦】

  1. 層層解析Hibernate中的事務的濫用
  2. 詳解Hibernate的工作原理和體系結構
  3. 十五道關于Hibernate的面試題
  4. Hibernate、Spring和Struts工作原理及使用理由
  5. 關于Hibernate你必須知道的六個方面
責任編輯:佚名 來源: 新浪博客
相關推薦

2009-09-22 09:55:58

Hibernate實例

2010-04-15 09:09:02

Hibernate

2009-06-03 16:27:27

Hibernate一對一關系

2009-06-03 16:18:16

Hibernate關系代碼實例

2009-07-21 17:31:39

iBATIS一對多映射

2022-02-18 11:05:25

Jpa配置Address

2023-06-12 08:09:01

FlaskSQLAlchemy

2012-03-21 11:43:41

JavaHibernate

2009-06-04 10:34:19

Hibernate一對一對多關系配置

2009-06-18 14:22:06

Hibernate多對Hibernate

2010-07-07 08:33:09

SQL Server學

2012-02-08 13:34:08

HibernateJava

2011-03-25 10:49:30

Join一對多

2009-08-17 10:34:51

NHibernate一

2009-06-24 15:51:47

Entity Bean一對多映射

2009-06-26 10:15:54

面試HR

2009-09-23 10:37:50

Hibernate一對

2009-12-23 09:31:11

寬帶路由上網故障

2011-08-17 10:28:53

多對多查詢SQL Server

2012-03-13 16:29:54

Between情侶移動應用
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲一区二区av在线 | a国产一区二区免费入口 | 日韩午夜 | 精品产国自在拍 | 精品久久电影 | 午夜影院在线观看 | 99re99| 成人在线免费视频 | 久久久久久成人 | 亚洲va国产日韩欧美精品色婷婷 | 亚洲成人中文字幕 | 久久一区二区三区四区五区 | 欧美激情va永久在线播放 | 日韩精品在线看 | 性生生活大片免费看视频 | 欧美激情欧美激情在线五月 | 成年人在线观看视频 | 伊人网在线播放 | 亚洲国产精品一区二区久久 | 色婷婷av久久久久久久 | 毛片毛片毛片毛片 | 在线观看国产三级 | 五月婷婷中文 | 日韩av成人| 男女深夜网站 | 久久久免费少妇高潮毛片 | 亚洲天堂一区二区 | 黄色av网站在线观看 | 久久久久国产一区二区三区四区 | 男人的天堂在线视频 | 91国自视频 | 日韩成人在线观看 | 在线午夜| 日本aaaa| 夜夜夜操 | 欧美精品一区二区免费 | 亚洲精品综合 | 国产欧美精品 | 久久天天躁狠狠躁夜夜躁2014 | 久久久久久久久99精品 | av在线二区 |