权限问题,权限要细化到增删改查? 在项目中,权限要细化到增删改查。请教一下几个问题?1,数据库怎么设计?2,页面上怎么导航权限?3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以控制action通过过滤器拦截 这个要全局规划的。----------------如果请求有特点包还权限值那么你可以用拦截器。如果你想通过映像配置那就要想怎么用函数.------------------如下有本人的一套方案,自己研究:--反射方法表T_REF_METHODCREATE TABLE IF NOT EXISTS T_REF_METHOD(RE_ID INTEGER NOT NULL AUTO_INCREMENT COMMENT 'ID', ROLE_ID int(4) NOT NULL COMMENT '角色ID',TASK_DEF_ID bigint(20) COMMENT '任务定义ID', PRG_SUB_NAME varchar(20) NOT NULL COMMENT '子项目名',KEY_NAME varchar(50) NULL COMMENT '导向关键字',METHOD varchar(100) NOT NULL COMMENT '方法名称',PRIMARY KEY (RE_ID))函数写法METHOD(统一参数){} 1,数据库怎么设计? [看自己的需求吧,一般来说,权限与用户的设计是分开的,看看windows就知道了,用户属于了某个组后, 就拥有了权限] 2,页面上怎么导航权限? [这个自己定吧,无所谓]3,页面上怎么控制增删改查? [永远不要依靠前台页面来做,即使前台做了,也要在业务层做严格的管控] 数据库里要有角色(js)的字段。页面上<s:if test="js==?"/> </s:if>各种角色独有的功能写在里面 一个完整的权限系统不是那么简单的~~~~特别是在权限分配的时候,一般很少有一对一的权限设计这样数据库负担很大除非你们人少一般都是 权限的底层是 增删改查然后把这4项分组人的权限 底层是人的ID (包括领导ID) 打个比方上层 是部门 一个部门对应多个人就这样简单的4项增删改查 01 02 03 04 增删改查组 01组 02组 03 组 04组 05组。(组里包括增删改查的某几个,当然有时候这层可以不要)人 iD 0001 0002 0003 ...部门 001 002 003 ...交叉编组 人|权限 组合0001|01部门|权限 001|01 1.给需要控制权限的按钮一个唯一的ID2.权限分配时,先用JS找出权限分配页面所有的button,将需要控制的button的ID和用户ID保存到数据库3.用户登陆后,将所有权限控制的button的ID数组查出来放到session,然后在页面上判断登陆用户是否有此按钮的权限 晕 没写完就提交了点错了把这些对应的 组和 ID 分配到 每个画面实现的时候 在每个画面去 ID 解析(写个共通) 解析后得出该用户的权限 在页面实现 具体实现 看你用的什么技术了 很多做法理论上很好,可是工程上比较累。我来说说工程上实际的做法吧。 1,数据库怎么设计? 数据本身不做特别设计。只是一般增加权限表,角色表,用户表和关联表。 权限表: 记录所有权限项目。 角色表: 比较流行,可以用身份表示权限,也可以用部门表示权限。 用户表: 管理所有用户信息,包括密码,姓名等等。 关联表: 包括用户和角色的关联表,和 角色与权限的关联表。 多多关联。 2,页面上怎么导航权限? 所有权限分菜单项实现最简单。就是 XXX查询,XXX新增,XXX修改,XXX删除四个菜单。 简单的做法,查询 是基本权限,没有就查询,删除,修改的菜单。 修改,删除要同时含查询权限。 新增独立权限。 3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限) 不需要了。 建议lz学习一下spring的spring security如何数据不牵涉到细粒度方面的控制,spring security就可以完全实现你需要的功能! 就设计一张表,再用sql语句,控件做增删改行不 java输入的问题 再次发两道面试题 想学java很迷茫 矩阵转置 一个简单的线程通讯的问题,麻烦看一下! java媒体流(请高手进入) 调查portal的情况 比如发展 应用 前途 java怎么去除JSON数组的重复值? 这个问题是怎么回事啊 初学java数据库编程,请教。100分相送。。。 看看我这样做有啥欠缺没?老感觉怪怪的,虽然答案对了! java中的奇怪现象
----------------
如果请求有特点包还权限值那么你可以用拦截器。
如果你想通过映像配置那就要想怎么用函数.
------------------
如下有本人的一套方案,自己研究:--反射方法表T_REF_METHOD
CREATE TABLE IF NOT EXISTS T_REF_METHOD(
RE_ID INTEGER NOT NULL AUTO_INCREMENT COMMENT 'ID',
ROLE_ID int(4) NOT NULL COMMENT '角色ID',
TASK_DEF_ID bigint(20) COMMENT '任务定义ID',
PRG_SUB_NAME varchar(20) NOT NULL COMMENT '子项目名',
KEY_NAME varchar(50) NULL COMMENT '导向关键字',
METHOD varchar(100) NOT NULL COMMENT '方法名称',
PRIMARY KEY (RE_ID)
)函数写法
METHOD(统一参数){}
[看自己的需求吧,一般来说,权限与用户的设计是分开的,看看windows就知道了,用户属于了某个组后, 就拥有了权限]
2,页面上怎么导航权限?
[这个自己定吧,无所谓]3,页面上怎么控制增删改查?
[永远不要依靠前台页面来做,即使前台做了,也要在业务层做严格的管控]
页面上<s:if test="js==?"/> </s:if>
各种角色独有的功能写在里面
特别是在权限分配的时候,一般很少有一对一的权限设计
这样数据库负担很大
除非你们人少一般都是
权限的底层是 增删改查
然后把这4项分组人的权限 底层是人的ID (包括领导ID) 打个比方
上层 是部门 一个部门对应多个人就这样简单的4项增删改查 01 02 03 04
增删改查组 01组 02组 03 组 04组 05组。(组里包括增删改查的某几个,当然有时候这层可以不要)
人 iD 0001 0002 0003 ...
部门 001 002 003 ...交叉编组 人|权限 组合0001|01
部门|权限 001|01
2.权限分配时,先用JS找出权限分配页面所有的button,将需要控制的button的ID和用户ID保存到数据库
3.用户登陆后,将所有权限控制的button的ID数组查出来放到session,然后在页面上判断登陆用户是否
有此按钮的权限
点错了把这些对应的 组和 ID 分配到 每个画面实现的时候 在每个画面去 ID 解析(写个共通)
解析后得出该用户的权限 在页面实现 具体实现 看你用的什么技术了
1,数据库怎么设计?
数据本身不做特别设计。只是一般增加权限表,角色表,用户表和关联表。
权限表: 记录所有权限项目。
角色表: 比较流行,可以用身份表示权限,也可以用部门表示权限。
用户表: 管理所有用户信息,包括密码,姓名等等。
关联表: 包括用户和角色的关联表,和 角色与权限的关联表。 多多关联。
2,页面上怎么导航权限?
所有权限分菜单项实现最简单。就是 XXX查询,XXX新增,XXX修改,XXX删除四个菜单。
简单的做法,查询 是基本权限,没有就查询,删除,修改的菜单。
修改,删除要同时含查询权限。
新增独立权限。
3,页面上怎么控制增删改查?(隐藏按钮,或者点击告诉没有权限)
不需要了。