目录
多对多级联是一种非常复杂的级联关系,一般采用两个一对多来进行处理
例如:现实中有许多用户,用户又归属于一些角色,这样一个用户可以对应多个角色,而一个角色又可以由多个用户担当,这个时候用户和角色是以一张用户角色表建立关联关系,这样用户和角色就是多对多的关系。
1.pojo清单
1.1用户
@Data
public class User2 {
private Long id;
private String userName;
private String realName;
private SexEnum sex;
private String mobile;
private String tel;
private String email;
private String note;
// 用户一对多
private List<Role2> roleList;
}
1.2角色
@Data
public class Role2 {
private Long id;
private String roleName;
private String note;
// 角色一对多
private List<User2> userList;
}
两个List类型的属性是专门做一对多级联用的,XML文件中会用collection元素去完成
2.Mapper接口清单
2.1用户Mapper
public interface UserMapper2 {
public User2 getUser(Long id);
public List<User2> findUserByRoleId(Long roleId);
}
2.2角色Mapper
public interface RoleMapper2 {
public Role2 getRole(Long id);
public List<Role2> findRoleByUserId(Long userId);
}
两个Mapper都有两个方法,第一个方法是根据ID查询当前对象,第二个是根据userId或者roleId查询对应的用户或者角色
文章评论