当前位置: 首页 > news >正文

重庆招聘网站哪个好外加工平台

重庆招聘网站哪个好,外加工平台,免费搭建手机网站源码,深圳做网站网络公司有哪些如果想要获取相关的源码,笔记,和相关工具,对项目需求的二次开发,可以关注我并私信!!! 四 权限管理(用户授权)的应用:根据用户的角色显示不同用户的权限菜单 经过上面的与第三方系统的成功的接入,而且在“角色管理”菜单中也对需要授权的角色进行了授权--->给一级…

如果想要获取相关的源码,笔记,和相关工具,对项目需求的二次开发,可以关注我并私信!!!


四 权限管理(用户授权)的应用:根据用户的角色显示不同用户的权限菜单

经过上面的与第三方系统的成功的接入,而且在“角色管理”菜单中也对需要授权的角色进行了授权--->给一级菜单和二级菜单授权给了卫生室,那么,接下来就需使用卫生室登录系统,看看页面中的导航菜单中是否显示了添加的一级菜单和二级菜单导航菜单!

简单说,本节中所要实现的功能是:验证用户的权限菜单!就是使用不同的用户登录系统,并根据用户的角色获取他的权限菜单,并在左侧页面中的导航栏中显示!

即:根据不同用户的登录来显示不同用户的菜单!

举例来说:使用卫生局和卫生室两个角色分别登录系统,在导航栏中的权限菜单的显示也是不同的!

因此,first.jsp页面中发送的请求中的Menu.json文件可以不需要了!同时,本节的内容需要和第7节的内容分步来实现权限管理的应用的

该节内容总结就是:

用户登录成功后,根据用户所属的角色来从数据库中查出用户的菜单权限,然后将菜单权限存储至session中,从而实现不同的用户登录,显示出不同的菜单

因此,也可以说菜单权限属于粗颗粒度的权限管理范畴!

1 DAO

1.1 sql语句的编写(有难度

再次强调:在写sql语句之前,必须要对这9张表之间的关系烂熟于心

这9张表之间的关系可以参考“第三方用户授权系统表关系.xlsx”文件,或者参考“本系统的权限管理模型”一节中的内容和视频!!

需求:根据用户角色获取该角色下所有的一级和二级菜单。注意:是所有的一级和二级菜单,而不是某个一级菜单下的二级菜单!这样做是为了节省性能。

主查询表:权限菜单表bss_sys_module表可以查看所有的一级菜单和二级菜单,它是一个树形结构。其中parentid字段值为0表示一级菜单,而parentid的值中不为0的都是二级菜单,并且,所有的二级菜单中都有url链接地址.

如下图:

关联查询表:角色表、角色系统关系表、角色节点关系表、角色菜单关系表、角色操作关系表。

--查询某个卫生室的所有一级和二级菜单

select m1.moduleid menuid,

       m1.name menuname,

       m2.moduleid menuid_two, 

--之所以别名是menuid_two,而不是menuid.是因为mybatis对于结果集中两个相同的menuid字段是无法实现映射的,虽然这两个字段的内容相同,但是字段名称绝对不可以相同。

       m2.name menuname_two,

       m2.url

  --这里设定m1中存放的是所有的一级菜单,m2中存放的是所有的二级菜单

from bss_sys_module m1, bss_sys_module m2

--自连接条件

 where m2.parentid = m1.moduleid

   and m1.parentid = '0'   --表示所有的一级菜单

   and m2.parentid != '0'  --表示所有的二级菜单

 --该条件用来限定某个角色下所有的二级菜单,因此,范围在m2.moduleid之内     

   and m2.moduleid in  

       (

        

        ---限定某个角色范围内的菜单

        select bss_sys_rolemodule.moduleid

          from bss_sys_role,

                bss_sys_rolesys,

                bss_sys_rolenode,

                bss_sys_rolemodule,

                bss_sys_roleoperate

                --角色表和角色系统表的关联

         where bss_sys_role.roleid = bss_sys_rolesys.roleid

                 

           and bss_sys_rolenode.rsid = bss_sys_rolesys.rsid

           and bss_sys_rolemodule.rnid = bss_sys_rolenode.rnid

           and bss_sys_roleoperate.rmid = bss_sys_rolemodule.rmid

           ---假设角色id是卫生室

           and bss_sys_role.roleid = '511A6F41419949C38122A94310DADD14')

 order by m1.showorder, m2.showorder  ---排序,showorder字段是排序字段  

1.2 VO类的定义

VO的定义--->Menu.java

其中定义的:List<Menu>  meus属性中存储的是二级菜单。

这Menu类中属性的定义就是一对多的结构定义。(牢记)!

之所以单独定义一个Menu类,是为了方便直接转换成json格式的数据,因为页面中的权限菜单需要使用JSON格式的数量来显示(这是该系统的开发规范之一)!

(可以参考下面的FirstAction类中的获取菜单方法usermenu()方法会使用到).

1.3 mapper映射文件的定义(一对多查询)

因为是一对多的映射,即:一个用户(角色)对应多个权限菜单,所以必须使用resultMap实现映射

关于该映射文件中各个属性的含义,请参考“mybatis的高级知识.doc”文档!!!!

在SysuserMapperCustom.xml映射文件中添加如下内容:颜色加深加粗的都是添加的内容。

<!-- 一对多映射 -->

<resultMap id="findMenuByroleidResultMap" type="yycg.base.pojo.vo.Menu">

<!-- column=menuid表示唯一的数据库查询语句中的主键。因为在sql语句的结果集中,mybatis会自动把结果集中的menuid主键字段相同的记录进行合并 -->

<id column=

http://www.dtcms.com/a/575187.html

相关文章:

  • 卡片形式的网站网页设计与制作专业介绍
  • 网站开发业务怎么做南京seo圈子
  • 菏泽营销网站建设公司做车展的网站
  • 用户界面设计报告网站开发技术和seo的联系
  • IEC 62443 标准介绍
  • 湖北做网站价格微信登录wordpress
  • 做设计那个素材网站最好建设银行网站打不开 显示停止工作
  • 泰州网站建设外包企业备案网站服务内容
  • C++基础:Reactor模型设计思想与muduo架构理解
  • 网站推荐软件深圳龙岗高端网站建设
  • 网站建设及验收标准如何自己开发一个软件
  • 怎样提高网站排名网站建设仟首先金手指12
  • 石家庄外贸网站制作ps做网站需注意
  • 慈溪做无痛同济 amp 网站女教师遭网课入侵直播录屏曝光i
  • 设计素材网站有哪些平台免费制作个人网站的软件
  • 专门做海外服装购的网站字体设计的基本原则
  • 清溪镇网站建设对接 网站后台
  • 深圳自建网站网站区分
  • 如何免费建设公司网站碧辉腾乐 网站建设
  • 网页设计新手制作的网站代码网站建设流程是什么意思
  • 网站怎么做视频教程wordpress添加订阅教程
  • 佛山 做网站公司有哪些哪一个军事网站做的比较好
  • 怎么找一家公司的网站代刷网自助建站系统
  • raf节流
  • 【SOA仿真】SOA增益饱和特性仿真3
  • 百度不收录我的网站网站备案部门
  • 西宁知名网站制作公司多模室内设计网
  • 余弦相似度、矩阵分解、深度学习物品的复杂、非线性特征
  • 湖州市建设局网站各个国家的google网站
  • 岳阳网站建设联系方式服务称赞的项目管理平台