JEECG - 基于代码生成器的J2EE智能开发框架 续五:权限设计
当前分析: 目前权限模块的设计,模型很多也很成熟,各种精细控制也很完善,但同时因为权限设计的太精细化,也产生一个问题: 用户系统操作越来越复杂;
实际上用到这么精细设计的项目也并不多。
一般项目只需控制到菜单级别,即使需要控制到按钮权限,也是少数几个页面,所以我就想设计一个轻量级权限:
以菜单权限为主,按钮权限为副,达到用户操作简单,条例清晰,又能满足菜单和按钮权限控制!!
简述我的权限设计:
菜单和按钮权限采用分离设计,二者没有关联关系而是相互独立。
(采用一张表,存储菜单和权限,设计权限类型字段加以区分)
权限分类:
[1].菜单权限(权限类型:1)
[2].按钮权限(权限类型:2)
权限控制说明:
[1].菜单权限:
用户只有配置了菜单权限,才能看到对应的菜单;
[2].按钮权限:
A.没有配置的按钮权限,所有人都可以访问;
B.按钮权限进行了配置,则只有分配权限的人才能访问;
按钮权限自定义标签使用:
<%@taglib uri="/btn-tags" prefix="btn"%>
<btn:accessprivilege="personAction!add.action">add();</btn:access>
权限配置:
目前只有三层:用户-角色-权限(菜单权限、按钮权限)
备注:我的设计是以快速开发为宗旨,简单清晰,当然不能适合所有的系统,有的系统功能需要非常精细化,哪肯定得采用一些比较成熟的权限模型;
JEECG - 基于代码生成器的J2EE智能开发框架 续五:权限设计相关推荐
- JEECG - 基于代码生成器的J2EE智能开发框架 续四: 查询条件SQL生成器设计思路
JEECG[J2EE Code Generation]是一款基于代码生成器的敏捷开发框架. 续前文:http://blog.csdn.net/zhangdaiscott/article/detail ...
- JEECG - 基于代码生成器的J2EE智能开发框架 续二: 代码生成器使用规则
JEECG[J2EE Code Generation]是一款基于代码生成器的敏捷开发框架. 续前文:http://blog.csdn.net/zhangdaiscott/article/detail ...
- JEECG - 基于代码生成器的J2EE智能开发框架 续一: JEECG框架搭建步骤 [更新版]
提醒: A.项目开发环境: MyEclipse6.5 + jdk1.6 + Tomcat6.0 ; B.目前已经测试通过的数据库有MySql5.Oracle10g.SqlServer200 C.建 ...
- JEECG - 基于代码生成器的J2EE智能开发框架 续一:开发环境搭建步骤
提醒: A.项目开发环境:MyEclipse6.5+jdk1.6+Tomcat6.0 B.目前已经测试通过的数据库有MySql5.Oracle10g.SqlServer200 C.建议使用goo ...
- JEECG - 基于代码生成器的J2EE智能开发框架 续六: JEECG 前台页面和后台交互讲解
近期有朋友对 EasyUI和后台交互方式不理解,特做一下简单整理,希望能对大家有所帮助!!! 一般情况下一个功能模块分为:增.删.改.查四个功能点; 针对功能的页面设计如下: [OLD]老式页面设计采 ...
- JEECG - 基于代码生成器的J2EE智能开发框架 杂记:【演示视频和源码】
前言:随着WEB UI框架(EasyUi/Jquery UI/Ext)等的逐渐成熟,系统界面逐渐实现统一化,代码生成器也可以生成统一规范的界面!代码生成+手工MERGE半智能开发将是新的趋势,单表数据 ...
- 【CF 应用开发大赛】JEECG 基于代码生成器J2EE智能开发框架
为什么80%的码农都做不了架构师?>>> 应用名称:JEECG(J2EE Code Generation) 基于代码生成器J2EE智能开发框架 应用URL地址:http://j ...
- 智能窗帘研究制作_基于51单片机的智能窗帘的研究与设计.doc
基于51单片机的智能窗帘的研究与设计 第 PAGE \* Arabic \* MERGEFORMAT 24 页第 PAGE \* Arabic \* MERGEFORMAT 24 页 目录 TOC \ ...
- 基于语音交互技术的智能语音助手系统的设计与实现
文章目录 <基于语音交互技术的智能语音助手系统的设计与实现> 1. 引言 2. 技术原理及概念 2.1. 基本概念解释 2.2. 技术原理介绍:算法原理,操作步骤,数学公式等 2.2.1. ...
最新文章
- 云告警平台 OneAlert :如何帮助运维工程师做好汇报?
- php 获取上周日期_php 获取今日、昨日、上周、本月的起始时间戳和结束时间
- 风格之争:Coroutine vs Callback
- 高并发下如何生成唯一订单号?
- Qt将QString转换成ASCII码
- opencv多目标追踪容器
- 0—1背包问题,回溯实现
- Hyperledger Fabric教程(6)-- byfn.sh分析-peer-base.yaml
- 第六届蓝桥杯java b组第一题
- sim800使用方法
- 算法提高 字符串跳步
- 微信JS-SDK实现自定义分享功能,分享给朋友,分享到朋友圈及QQ自定义分享--微信分享
- Arduino基础2
- android音频降噪webrtc
- Linux里get命令,Linux apt-get 命令用法详解-Linux命令大全(手册)
- 安卓开发VideoView播放本地视频失败解决办法
- mac文件反选_【PS反选键是什么?】Photoshop该如何进行反向选择?
- Python笔记:matplotlib 三维图表绘制方法简介
- vectorvn1610报价_VECTORVN1610
- 【ManageEngine】终端管理系统,助力华盛证券数字化转型
热门文章
- 清华大学2019计算机录取分数线,2019年清华大学各省各批次录取分数线
- 只开窗不镀锡_推拉窗和平开窗哪个好?
- 最小生成树Kruskal算法+并查集检查连通
- 计算机网络之数据链路层:11、CSMA/CD协议-随机访问介质访问控制
- Linux系统编程15:进程控制之如何创建进程和写时拷贝技术
- Python 获取当前时间或当前时间戳,通过时间戳获取hash
- Linux安装setuptools
- jquery插件制作 -- 3.表单验证
- 【转】各种树:trie树、B树、B-树、B+树、B*树
- [转]vmware 域网络搭建