日期:2014-05-20  浏览次数:20805 次

求解怎么读出权限的角色名称?
数据库有5张是权限表 是多对多的关系!users用户表和sys_menu_role菜单和角色的中间表,sys_menu 菜单表 sys_role权限角色表 sys_user_role 用户和角色的中间表!
  private Integer tbId;
private TbDepartment tbDepartment;
private TbPosition tbPosition;
private String tbLoginname;
private String tbPass;
private String tbName;
private String tbPurview;
private String tbSex;
private String tbEmail;
private String tbTel;
private Blob tbPhoto;
private Set tbProgrammes = new HashSet(0);
private Set tbLeaves = new HashSet(0);
private Set tbMessages = new HashSet(0);
private Set loginlogs = new HashSet(0);
private Set sysRoles = new HashSet(0);
这是users表中的属性 我在页面用el表达式users.sysRoles.'rolename' 来显示,但是报错
javax.el.PropertyNotFoundException: Property 'rolename' not found on type org.hibernate.collection.PersistentSet
 求解多对多 怎么才可以调用相关对象的属性。

------解决方案--------------------
我最近也刚好遇到这个问题。
我是先通过用户得到sysRoles,然后再循环sysRoles 得到sysMenus对象列表。
而不是通过用户直接得到sysMenus集合