当前位置: 首页>编程语言>正文

java 数据权限的行和列 java 数据权限设计



业务环境用户权限管理

陈述需求:

  • 不同职责的人员,对于系统操作的权限应该是不同的
  • 可以对“组”进行权限分配
  • 权限管理系统应该是可扩展的
  • 满足业务系统中的功能权限

关于设计:

借助NoahWeb 的动作编程理念,在设计阶段,系统设计人员无须考虑程序结构的设计,而是从程序流程以及数据库结构开始入手。为了实现需求,数据库的设计可谓极其重要,无论是“组”操作的概念,还是整套权限管理系统的重要性,都在于数据库的设计。

分析数据库的过程:

  • 首先:根据需求可以抽离出三项对象关系:

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_多对多,第1张

  • 三张飙之间的关系是多对多的,一个权限可能同时属于多个管理组,一个管理组也可能包含多个权限。同样的道理,一个人员可能同时属于多个管理组,而一个管理组也可能同时包含多个人员:

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_数据库结构_02,第2张

  • 由于这三张表之间存在着多对多的关系,那么他们之间的交互,最好使用另外两张表来完成。而这两张表起着映射的作用,前者映射了权限表与管理组表之间的交互。后者映射了人员表与管理组表之间的交互。

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_数据库_03,第3张

  • 另外,还需要一章表来控制系统运行是左侧菜单中的权限分栏,也就是“权限分栏表”

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_java 数据权限的行和列_04,第4张

  • 另外,人员表中抽离出两张外键表,分别记录 部门 , 职位信息
  • 根据上面的分析,我们进行数据库结构设计如下:

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_多对多_05,第5张

最终数据库字段设计

  • 人员表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_数据库_06,第6张

  • 部门表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_数据库_07,第7张

  • 职位表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_java 数据权限的行和列_08,第8张

  • 权限分栏表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_数据库_09,第9张

  • 权限表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_多对多_10,第10张

  • 组别表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_cms_11,第11张

  • 组别人员关联表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_多对多_12,第12张

  • 权限组别关联表

java 数据权限的行和列 java 数据权限设计,java 数据权限的行和列 java 数据权限设计_cms_13,第13张



 




https://www.xamrdz.com/lan/5f41951165.html

相关文章: