• (十一)角色管理



    系统权限:行政管理,后勤服务,在线学习,纳税服务,我的空间

    管理员:纳税服务,我的空间
    一般用户:我的空间


    角色与权限的关系:多对多
    一个角色可有多个权限;一个权限可以被多个角色使用


    角色表:role
    角色ID,角色名称,状态
    1 管理员 1
    2 一般用户 1

    角色权限表:role_privilege
    角色ID,权限code
    1 nsfw
    1 space
    2 space

    权限表:privilege
    权限code,权限名称
    nsfw 纳税服务
    space 我的空间

    联合主键:①实现Serializable ②重写 hashCode, equals方法

    角色与权限说明

    角色与权限的关系

    系统中可以存在多个角色,每个角色可以自由的组合系统定义的权限集合。即角色和权限的关系是多对多的关系。为了保存这种多对多关系,需要一个角色权限表来保存。角色与角色权限的关系是一对多的关系;而权限与角色权限的关系也为一对多关系。

    定义系统权限集

    将系统中需要使用到的权限先定义出来:粗粒度的分为各个子系统的访问权限;这些权限可以定义在常量文件中。

    角色管理CRUD

    实体类及映射文件

    (1)Role/Role.hbml.xml

    (2) RolePrivilege/RolePrivilegeId,RolePrivilege.hbm.xml

    dao、service层主要操作方法

    dao中主要方法:

     

    service中主要方法:

    action中主要方法

    配置文件

    配置role-spring.xml及role-struts.xml,并将role-struts.xml加入到struts.xml总配置文件中。

    用户角色说明

    一个用户可以对应多个角色,一个角色可以对应多个用户。用户与角色的关系也是多对多的关系。在页面中应该体现出在添加、编辑用户时可以选择多个角色;并且用户不直接关联系统的权限,用户的权限都是通过角色来关联实现。

    用户:用户1,用户2
    角色:管理员,一般用户

    用户与角色的关系:多对多
    一个用户可以有多个角色;一个角色可以被多个用户使用

    用户:user
    用户id,名称...
    1 用户1
    2 用户2

    用户角色:user_role
    用户id,角色id
    1 1
    1 2
    2 2


    角色:role
    角色Id,名称
    1 管理员
    2 一般用户

    改造用户管理

     用户表实体类、映射文件的改造

    新增“用户角色”实体及映射文件:

    用户保存、更新、删除方法改造

    1、  UserAction:

    在跳转到addUI时应该初始化系统的所有角色列表提供添加页面进行选择:

    更新方法:

    在UserDaoImpl中:

    UserServiceImpl类中:

    在jsp页面中将角色选择改造为多选:

     

  • 相关阅读:
    python百度ai的银行卡识别代码
    python百度ai的身份证识别代码
    Linux下安装jupyter
    HADOOP 与 jupyterlab 链接
    csv文件数据导出到mongo数据库
    Contos7 常用命令
    centos 安装Python3 及对应的pip
    PHP 连接数据库
    java 注解学习记录
    java简单实现搜索指定后缀文件
  • 原文地址:https://www.cnblogs.com/Michael2397/p/5934130.html
Copyright © 2020-2023  润新知