在数据库中设计了用户表,角色表,权限表及关联表。
我的目地是一个用户可以有多个角色。
在用户登录的时候可以判断当前用户的权限,可是怎么良好的在
前台完美显示这个用户的模块及模块下的操作权限,目前有个琢磨不透的问题。
目前只知道在登录的action得到moduleList = adminService.getModules(adm);
然后在前台用页面 用  <s:iterator value="#session.modulelist" id="module">
                             <a href="${module.url}">${module.name}</a>|
                             </s:iterator>
显示。
求助:
1:在1个用户对应多个角色的情况下,取得的moduleList我得到的是个set集合,每次顺序不一样,
不知道解决,(我通过用户名取得他相应的模块权限名返回的是set)。
2:在后台可以得到一个用户的权限下,怎么在前台更美好的显示? 利用什么好的技术。

解决方案 »

  1.   

    1、可以使用list,然后再数据库的菜单表加个顺序号。
    2、前台的东西就麻烦了,你可以使用extjs,来显示数据
      

  2.   

    直接用java自带的.sort()方法行么?
      

  3.   

    可以把set转化为list 不知道可行不
    既然你的数据库设计中设计的是一对多,可以在hibernate配置中set里面加上order-by="字段 asc" 就会按顺序的
      

  4.   

    2:在后台可以得到一个用户的权限下,怎么在前台更美好的显示? 利用什么好的技术
    当然是在后台先排好序就行了!方法如下:  List    getModelList(Set<Model> modelSet){           里面按照 model的某个属性排即可!重新载入到List中!
              这样就ok了。。
      }
    因为我也做过同样的事情呼呼。。
      

  5.   

    List         getModelList(Set <Model>   modelSet){                       里面按照   model的某个属性排即可!重新载入到List中! 
                        这样就ok了。。 
        }
      

  6.   

         利用dtree吧。
      

  7.   

    在数据库里面增加一个顺序的字段,查询的时候order by 一下。