Hibernate對映多對多雙向關聯關係(小案例)

2022-08-03 05:12:14 字數 1438 閱讀 4848

多對多雙向關聯關係(project(工程)/emp(員工)為案例):

步驟如下:

1、建立project類,並需要定義集合型別的emp屬性

public class project 

public void setpid(integer pid)

public string getpname()

public void setpname(string pname)

public setgetemps()

public void setemps(setemps)

2、建立emp類,並需要定義集合型別的project屬性

public class emp 

public void setempname(string empname)

public integer getnid()

public void setnid(integer nid)

public setgetpros()

public void setpros(setpros)

}

3、需建立第三張表 關聯project和emp各自的主鍵pid、nid多對多關聯關係的實現需要乙個連線表,的屬性指出的就是連線表的名稱,指出連線表參照project表id的外來鍵的欄位名;中的class指定與emp多對多關聯的類,column指定連線表參照emp對映表(此處由emp.hbm.xml對映為emp表)id的外來鍵的欄位名。4、編寫project.hbm.xml和emp.hbm.xml小配置,並植入元素中的table屬性 第三張表proemp 以及多對多標籤 class指定型別

emp.hbm.xml關鍵**如下:

project.hbm.xml關鍵**如下:

5、大配置hibernate.cfg.xml 需關聯小配置

6、測試類 test

/*

* 多對多 雙向

*/@test

public void addtest()

注:對於雙向多對多關聯,需要將其中一端inverse屬性設為true,否則違反約束條件。

hibernate高階 多對多對映

前面學習了一對多對映,對hibernate的配置有一定大了解,在實際開發中還有一種對映關係就是多對多對映,比如乙個公司中開發人員和專案之間就是多對多的關係,乙個開發人員可以同時參與幾個專案,當然乙個專案可以有多個人員參與。首先就是在資料庫中建立三張表,除了本來的雇員表和專案表外,另外一張表來儲存兩者...

hibernate的多對多對映

平時工作中雖然也經常提到多對多的對映,但是在實際操作中運用到還是第一次.組group和角色role,多對多的對映.role的對映檔案 code start with 1000 code group的對映檔案 code start with 1000 code 頁面支援雙向操作,即可在角色中新增刪除組...

Hibernate中使用註解對映多對多

在hibernate中,通常配置物件關係對映關係有兩種,一種是基於xml的方式,另一種是基於annotation的註解方式表 create table t rights id number 5 name varchar2 50 constraint t rights name uk unique c...