一、多对多映射配置
——以用户和角色为例演示
第一步 :创建实体类,用户和角色
第二步:让两个实体类之间互相表示
(1)一个用户里面表示所有角色,使用set集合
(2)一个角色有多个用户,使用set集合
第三步:配置映射关系
(1)基本配置
User.hbm.xml类似的道理
(2)配置多对多关系
第四步:在核心配置文件里面
——测试:
二、多对多级联保存
——根据用户保存角色
第一步:在用户配置文件中set标签里面进行配置——cascade值save-update
第二步:写代码实现:创建用户和角色对象
// 添加两个用户,为每个用户添加两个角色
// 1.创建对象
User user = new User();
user.setUser_name("lucy");
user.setUser_password("123");
User user1 = new User();
user1.setUser_name("merry");
user1.setUser_password("1223253");
Role r1 = new Role();
r1.setRole_name("总经理");
r1.setRole_memo("总经理");
Role r2 = new Role();
r2.setRole_name("秘书");
r2.setRole_memo("秘书");
Role r3 = new Role();
r3.setRole_name("司机");
r3.setRole_memo("司机");
// 2.建立关系(角色放到用户里面)
user.getSetRole().add(r1);
user.getSetRole().add(r2);
user1.getSetRole().add(r1);
user1.getSetRole().add(r3);
// 保存用户
session.save(user);
session.save(user1);
三、多对多级联删除(了解)
第一步:
第二步:
四、多对多维护第三张表
(1)用户和角色对多对的关系,通过第三张表维护
(2)让某个用户有某个角色:根据id查询用户和角色——>把角色放到用户set集合
(3)让某个用户没有某个角色:根据id查询用户和角色——>从set集合里面去掉角色
day03完。