下邊講述hibernate多對多關係對映。
多對多關係的表的結構為:
兩個實體表,還包含乙個關係表,關係表為復合主鍵,如果要使用hibernate多對多關係對映,則關係表必須只包含兩個字段,如果生成了hibernate多對多關係對映,則中間關係表不會生成實體(即沒有對應的pojo類,更沒有其對映檔案)。
1、建立表
drop table user_course ;
drop table user ;
drop table course ;
create table user (
userid varchar(20) primary key ,
name varchar(20) not null ,
age int not null ,
birthday date not null
);
create table course (
id int primary key auto_increment ,
title varchar(50) not null,
description text not null,
course_num int not null
);
create table user_course (
userid varchar(20) ,
cid int ,
primary key (userid, cid ),
foreign key (userid) references user (userid) on delete cascade ,
foreign key (cid) references course (id) on delete cascade
);2、生成對映
選擇三個表一起生成對映,選擇主鍵生成方式的那一步需要注意:
hibernate 多對多關係(一)
什麼是多對多關係呢?關聯式資料庫中兩個表之間的一種關係,該關係中第乙個表中的乙個行可以與第二個表中的乙個或多個行相關。第二個表中的乙個行也可以與第乙個表中的乙個或多個行相關。比如在常見的訂單管理資料庫當中 產品 表和 訂單 表之間的關係。單個訂單中可以包含多個產品。另一方面,乙個產品可能出現在多個訂...
Hibernate多對多關聯關係
今天遇到乙個問題 有乙個的類reckoning,乙個類accountitem。這兩個類之間的關係時多對多的關聯關係。一開始是由accountitem來維護關聯關係的,也就是reckoning.hbm.xml檔案中的如下 將inverse的值設為true.set name accountitems t...
Hibernate多對多關係對映
兩張表的多對多關係,在資料庫中通常是通過第三張中間表來實現的,第三張中間表放的是兩張表各自的主鍵值,通過主鍵與主鍵的對應來體現表直接的關係。比如在許可權系統中,乙個使用者可以擁有多種許可權,而一種許可權也可以授予多個使用者。在持久化物件設計的時候,角色和使用者都分別有乙個集合來防止擁有它的使用者或角...