苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

分布式系统框架(V1.3) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper万能框架(V2.3-含.netcore) HttpHelper官方出品,无敌框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 最牛的爬虫类,没有爬不到只有想不到 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 3833|回复: 1

[教程] 【分布式系统框架教程】-应用程序启动时加载角色和权限关系静态对象

[复制链接]
发表于 2015-1-22 12:03:04 | 显示全部楼层 |阅读模式
【分布式系统框架教程】-应用程序启动时加载角色和权限关系静态对象



导读部分


1.【分布式系统框架】教程目录帖http://www.sufeinet.com/thread-10624-1-1.html

教程部分

   
   用户登陆后的权限处理问题可能是大家比较关心的问题,这里呢,我用到了了一个类,用这个类将所有角色以及所有角色对应的权限关系在程序启动时就从数据库中提取过来并进行相应的处理后得到一个静态的存在内存里的RolesList集合,这个集合包含了所有角色,同时每个角色又存储了各自对应的权限。现贴出部分代码:
[C#] 纯文本查看 复制代码
 /// <summary>
    /// 角色对应权限实体关系集合处理类
    /// </summary>
   public  class RoleFuncRelation
    {
       //程序启动时加载List集合
       private static List<Roles> roleslist = new List<Roles>();
     
       //Roles对象继承RoleInfo
       public class Roles:RoleInfo
       {
           //一个角色对象对应的权限集合
           public  List<FunctionInfo> functions { get; set; }

       }
}

其他的实现方法就不在这里公开了,大家可以看源码,我们可以看到这个list集合里存储的是Roles对象,同时这个Roles对象又有一个 List<FunctionInfo>的functions属性,就是通过这种结构在程序启动时就将所有的角色以及角色权限关系都提取出来,这样一来,用户登陆之后,我们就可以直接从这个类里面来提取这个角色权限关系静态集合对象,而避免了重复的每次判断权限都需要无限的访问数据库,可以说这种方式只需访问一次数据库,然后存放在内存中,在处理速度上也比每次都调用数据库快的多。
发表于 2018-12-8 23:41:34 来自移动端 | 显示全部楼层
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备17001017号-1)

GMT+8, 2019-9-17 10:25

© 2017-2018

快速回复 返回顶部 返回列表