第一次写
有点尴尬
表:
关系
咨询员 (咨询员和学生 是 多对对)
学生
用户 (学生和咨询员)
角色 (用户和角色是 多对多)
权限 (角色和权限是多对多)
public class Test {
/**
* 查询一号学生拥有的权限
*/
@org.junit.Test
public void test1() {
Session session = HibernateUtils.getSessionFactory().openSession();
Student student = (Student)session.get(Student.class, 1);
if(null != student) {
Set<Role> roles = student.getRoles();
if(null != roles && roles.size() > 0) {
for (Role role : roles) {
Set<Permissions> permissions = role.getPermissions();
if(null != permissions && permissions.size() > 0) {
for (Permissions permission : permissions) {
System.out.println(permission);
}
}
}
}
}
session.close();
}
/**
* 一个咨询员拥有的权限
*/
@org.junit.Test
public void test2() {
Session session = HibernateUtils.getSessionFactory().openSession();
Consultant consultant = (Consultant)session.get(Consultant.class, 1);
if(null != consultant) {
Set<Role> roles = consultant.getRoles();
if(null != roles && roles.size() > 0) {
for (Role role : roles) {
Set<Permissions> permissionss = role.getPermissions();
if(null != permissionss && permissionss.size() > 0) {
for (Permissions permissions : permissionss) {
System.out.println(permissions);
}
}
}
}
}
session.close();
}
/**
* 查询一号咨询员有多个学生,在查询该学生的权限
*/
@org.junit.Test
public void test3() {
Session session = HibernateUtils.getSessionFactory().openSession();
Consultant consultant =(Consultant)session.get(Consultant.class, 1);
if(null != consultant ) {
Set<Student> students = consultant.getStudents();
if(null != students && students.size() > 0) {
for (Student student : students) {
Set<Role> roles = student.getRoles();
if(null != roles && roles.size() > 0) {
for (Role role : roles) {
Set<Permissions> permissions = role.getPermissions();
if(null != permissions && permissions.size() > 0) {
for (Permissions permissions2 : permissions) {
System.out.println(permissions2);
}
}
}
}
}
}
}
}
}