我见过的最奇葩的权限设计思路

简介: 我见过的最奇葩的权限设计思路

需求很简单,就是为一个功能设计一个权限,一个功能包含的权限一共四个,固定的,不会增加也不会减少,即增加,修改,删除和查询,可以多选。

按照常规的设计,后台的表可以是一个表也可以是两个表,一个表如下左所示,两个表如下右所示:

微信截图_20230306123046.png

不管是一个表还是两个表,功能权限可以直接存汉字增删改查,也可以存英文CODE或者存1,2,3,4去表示。这里不考虑那种设计更好,重点是存的权限的值的问题。这种奇葩的设计是采用了一张表的设计,功能权限字段存的值是二进制位。增删改查对应的数字是1,2,4,8,前端就是四个CheckBox支持多选的那种,当客户选择的时候,后端将选择的值转换成二进制位,做相加移位操作,将最后的结过存到表中,当要查询出来输出到页面上时,再将该字段的值做分解,分解出选择的数量以及选择的数值是啥。当时看到这个功能的时候,果断重新写了一下,因为一方面感觉很别扭,另一方面是太高深了,虽然不考虑扩展性,也不至于用移位操作和数的分解操作,之前做这种设计的人应该是个"高手"。

目录
相关文章
|
8月前
|
测试技术
解决Bug应有的心态和解决方法的一些思路、方法和心得
永远要相信程序是不会骗你的,是自己在处理理逻辑中出问题,而在特定的环境中才会出现或者是自己压根就想不到情况下出现。 前几天在处理一个接口任务时,在测试环境跑是一点都没有,但在正式环境却没有将数据拉下来。没有报任何错误,一度怀疑、抱怨! 还好最后找到问题解决了!
45 0
|
1月前
|
Java
想要小黄过软考—小小的树(软件设计师篇)
想要小黄过软考—小小的树(软件设计师篇)
|
6月前
|
C语言
近期一系列个人做题反复记不住以及思路不清晰问题的总结
近期一系列个人做题反复记不住以及思路不清晰问题的总结
16 0
|
9月前
|
安全 测试技术
不会写测试用例咋办?牢记这5点,你也能写出高逼格案例
不会写测试用例咋办?牢记这5点,你也能写出高逼格案例
|
9月前
|
SQL 安全 前端开发
Web安全性测试包括哪些要点?梳理下,总算搞明白了
Web安全性测试包括哪些要点?梳理下,总算搞明白了
267 0
Web安全性测试包括哪些要点?梳理下,总算搞明白了
|
数据库
第一遍阅读之《信息系统开发与管理》(二战)
第二次学习信息系统开发与管理,第一感觉是:必过! 信息系统开发与管理距离我们软件的具体开发很近,在我们生物专业学习过程中,有一门课程叫做《食品仪器分析》,其中有一章节的内容讲的大概是建立一个工厂的过程是怎么样的。这其中的方法和我们的《信息系统开发与管理》的内容有异曲同工之妙,我们要建立的是一个工厂,但是摆脱不了和周围事物的联系。
|
监控 安全 前端开发
权限系统就该这么设计,yyds
权限系统就该这么设计,yyds
|
测试技术
初级软件测试面试题怎么找?提供的这两个地方你肯定用得上
最近几年,随着电子产品和互联网的蓬勃发展,各类科技公司如雨后春笋般出现,而软件公司作为科技类公司中的重要组成部分,在这支互联网大军中也占据了重要一席。因而,负责软件问题质检的软件测试岗位也逐渐成了这几年炙手可热的就业岗位之一。
122 0
|
存储 缓存 安全
图解用户登录验证流程,写得太好了!
图解用户登录验证流程,写得太好了!
281 0
图解用户登录验证流程,写得太好了!
|
敏捷开发 编解码 安全
测试面试题集锦(一)| 软件测试常见必考问题与流程篇(附答案)
![](https://ceshiren.com/uploads/default/original/3X/5/2/524b1c71f55a89ee9afe9e9ad712400cea13dba2.jpeg) 1.测试常见问题与流程篇 2.测试工具篇 3.计算机网络知识篇 4.数据库篇 5.Linux 篇 6.Python 编程篇 7.自动化测试篇:包含 Selenium、Appium 和接口测试