BigInteger的权限设计
2024-10-08 04:44:40
通过储存菜单权限的一个字段(id自定义也是可以的)
1 将选中菜单树的id转换成字符数组的形式,
进行BigInteger对权限进行2的权的和计算
public static BigInteger sumRights(String[] rights){
BigInteger num = new BigInteger("0");
for(int i=0; i<rights.length; i++){
num = num.setBit(Integer.parseInt(rights[i]));
}
return num;
}
将上面的到的num存入到,角色的一个字段中
在校验权限的过程中将之前存入的字段入参为sum
public static boolean testRights(BigInteger sum,String targetRights){
return testRights(sum,Integer.parseInt(targetRights));
}
直接的结果返回true或false
通过判断返回的Boolean值来显示菜单
最新文章
- 5G
- windows 8.1 试用感受:蛋疼感大幅降低
- x01.Lab.OpenCV: 计算机视觉
- android 抓包 使用 tcpdmp + Wireshark
- 【ASP.NET 进阶】定时执行任务
- ABBYY FineReader 12PDF选项卡有保存模式吗
- framMaker、Velocity模版引擎
- 和Timesten有个约会--Timesten技术专栏系列(一)
- leetcode 组合题
- c++ 高效文本读写
- HDU 4649 Professor Tian
- 分享一个自用的 Inno Setup 软件打包脚本
- 分布式事务、XA、两阶段提交、一阶段提交
- 快速部署Python应用:Nginx+uWSGI配置详解
- python 基础篇 2
- linux下高可用LVS搭建及配置方法
- C++ Primer高速入门之三:几种常见的控制语句
- Airtest 快速上手教程
- PHP取凌晨时间戳
- 转://Linux Multipath多路径配置与使用案例