Hibernate中one-to-many/many-to-one跟many-to-many
Hibernate中one-to-many/many-to-one和many-to-many1one-to-many/many-to-one (1)表结构 /**客户表**/ c
Hibernate中one-to-many/many-to-one和many-to-many
<1>one-to-many/many-to-one
(1)表结构
/**客户表**/
create table CUSTOMERS(
ID int not null auto_increment,
Name varchar(15),
primary key(ID)
);
/**订单表**/
create table ORDERS(
ID bigint not null auto_increment,
ORDER_NUMBER varchar(15),
CUSTOMER_ID int not null,
primary key(ID),
foreign key (CUSTOMER_ID) references CUSTOMERS(ID)
);
(2)Customers.hbm.xml
(3)Usr.hbm.xml
说明:多对多关系,通过一个中间连接表,分离成了两个一对多关系。
测试:
Usr?userA?=?new?Usr(); ??Usr?userB?=?new?Usr(); ??userA.setName("jinming"); ??userB.setName("genghua"); ????Authorization?auth1?=?new?Authorization(); ??Authorization?auth2?=?new?Authorization(); ??auth1.setAuth(0); ??auth1.setAuth(10); ??auth2.setAuth(1); ??auth2.setAuthorize(11); ????Set<Authorization>?set1?=?new?HashSet<Authorization>(); ??set1.add(auth1); ??set1.add(auth2); ??userA.setAuths(set1); ??userB.setAuths(set1); ????Set<Usr>?set2?=?new?HashSet<Usr>(); ??set2.add(userA); ??set2.add(userB); ??auth1.setUsers(set2); ??auth2.setUsers(set2); ????userDao.save(userA); ??userDao.save(userB);??