CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

oa系统权限设置问题,请大家给点思路?

楼主ychunshui(阿水)2003-12-02 16:52:20 在 Java / Web 开发 提问

如何实现较好? 问题点数:50、回复次数:3Top

1 楼zhang21cnboy(事了抚衣去,不留身与名)回复于 2003-12-02 17:06:53 得分 10

用户、角色、  
  一个用户可以有很多角色,一个角色里面可以有很多权限。。。。。。Top

2 楼xinshou1979330(Success.java)回复于 2003-12-02 17:52:33 得分 40

分四种实体  
   
  user   :   用户信息,这里只保存必要的信息(比如登录名和密码)。因为你要重用嘛。和具体系统有关的用户信息不要保存在这里,提供一个关联即可  
   
  userGroup   :   用户组。   和用户是一对多关系。一个userGroup里保存多个用户  
   
  role   :   角色。   就是你通过需求分析出来的系统有哪些角色。   一个角色里可以保存多个用户组。  
   
  Resource   :   资源。就是系统有哪些功能。   resource是和role有关系的。   在需求时就可以确定什么样的角色可以有哪些功能。一个role里可以有多个resource。  
   
  这样通过四种实体的关系,可以得到一个用户有哪些功能。  
   
   
  做一个通用的模块把上面这四种实体维护起来到数据库中。   (这个一点也不难)  
  定义好这个模块对外的接口。以提供外部调用。    
   
  在你的权限模块加一个单独的类,提供一个静态的验证的方法。比如  
   
    boolean   hasResource(String   userId,   String   resourceId);  
   
  提供一个用户,和一个要验证的资源。   如果该用户有权限返回true,否则返回false,以便在其它模块里使用这个方法来判断用户是否有权限。  
   
  至于你是不是要一次把该用户所有权限都取出来,然后相应的显示菜单了什么的。   看你的需要,加一个取指定用户全部resource方法可能较好。  
   
   
  这种实现的好处是设计相对简单,并在权限设置上有很大的灵活性,而且有一定的重用价值。(我们已经用在不同的项目中了)。  
  整个权限模块只有一个方法和其实模块有偶合,就是那个验证是否有权限的方法  
  boolean   hasResource(String   userId,   String   resourceId);  
   
  坏处是这种实现对数据库来说也要复用。   因为这个权限模块所对应的表结构已经定下来了。所以如果想在其它项目中用这个模块,其相应的表也得放入这个项目中(不过这几个表非常独立,不会影响太大)。  
   
  Top

3 楼ychunshui(阿水)回复于 2003-12-02 18:03:02 得分 0

有没有具体的实现,这样比较抽象.  
   
  简单的实现可不可以不要角色,即用户,用户组,资源,权限.  
   
  用户关联用户组,用户组关联权限,权限关联资源.Top

相关问题

  • 权限设置?
  • CVS权限设置
  • CVS权限设置
  • 对于c/s程序,在数据库上设置权限,如何控制登录呀?如何使权限与菜单发生联系呀?请教思路!!!
  • 权限设置问题
  • proxy中Ftp权限设置
  • 如何设置权限
  • 网页的权限设置?!
  • linux权限设置问题!!!
  • 怎样来设置权限?

关键词

  • 用户
  • 模块
  • 角色
  • 系统
  • 验证
  • 项目
  • 信息
  • 权限
  • 保存
  • 实体

得分解答快速导航

  • 帖主:ychunshui
  • zhang21cnboy
  • xinshou1979330

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo