这篇文章主要介绍了jspXCMS的菜单与权限怎么配置的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇jspXCMS的菜单与权限怎么配置文章都会有所收获,下面我们一起来看看吧。
后台菜单和权限是插件(二次)开发的最核心的部分,也是最难做到无缝整合的部分。大部分系统会将菜单信息保存到数据库中,这对升级和维护带来一定的困难。
Jspxcms的菜单和权限信息存放在配置中,方便管理、维护和升级;只需要在一个配置文件中设置好,即可以无缝整合系统的菜单、权限、赋权等问题,无需另外修改代码和页面。
开发时可以根据需要,将新功能菜单加到任意的一级菜单下的任意位置,也可以自己新增一级菜单,新增的一级菜单也可以放在任何你想要的位置上。
后台菜单分为两级,如内容管理、文件管理、用户权限、系统管理为一级菜单,文档管理、栏目管理、用户管理、角色管理为二级菜单。
后台菜单目前不支持三级。
/src/main/resources/conf/plugin/plug/menu.yml
菜单配置文件支持通配加载,符合classpath:conf/**/menu*.yml这个规则的配置文件都会加载,系统中其它菜单的配置位于/src/main/resources/conf/menu.yml。
加载菜单配置文件由com.jspxcms.core.MenuConfig的appContext.getResources("classpath:conf/**/menu*.yml");代码加载。
在/src/main/resources/conf/menu.yml文件中有一级菜单的配置。
600: name: navigation.plug icon: fa fa-plug perms: nav_plug
600: 菜单序号,决定一级菜单排列的位置。比如序号500的菜单会排在600的前面,而序号550则会排在500与600之间。注意:这个序号在所有的菜单配置文件中必须是唯一的,如果已经有600序号的菜单,则不能再建一个同样序号的菜单,可以为610或者558。
name: navigation.plug 菜单名称。其中navigation.plug是国际化代码,在/src/main/resources/messages目录下的文件里有这个代码对应的中文。也可以直接写中文,如name: 我的菜单。
icon: fa fa-plug 菜单图标。其中fa fa-plug是图标样式,请参考:https://getbootstrap.com/docs/3.3/components/。
perms: nav_plug 权限值。一级菜单通常都是虚拟菜单,点击后只是展开二级菜单,不需要访问后台,所以权限值可以随意定义,只要不和原有权限值重复即可。
在/src/main/resources/conf/plugin/plug/menu.yml文件中有二级菜单的配置。
600-1000: name: resume.management url: plug/resume/list.do perms: plug:resume:list ops: - create@plug:resume:create - copy@plug:resume:copy - edit@plug:resume:edit - save@plug:resume:save - update@plug:resume:update - delete@plug:resume:delete 600-1100: name: weixinMenu.management url: plug/weixin_menu/list.do perms: plug:weixin_menu:list ops: - save@plug:weixin_menu:save
600-1000 菜单序号。此处为两级,所以是二级菜单,其中600是一级菜单的序号,代表着二级菜单是属于序号为600的一级菜单之下。1000是二级菜单的序号,决定二级菜单排列的位置,这个序号在所属的一级菜单里必须是唯一的。注意:对应的一级菜单必须存在。
name: resume.management 菜单名称。与一级菜单相同。
url: plug/resume/list.do 菜单URL地址。点击这个菜单所访问的url。这是一个相对路径,以/cmscp/为基础路径,所以这个地址实际上是/cmscp/plug/resume/list.do。这个url地址必须要有相应Controller,否则点击这个菜单会找不到页面。如@RequestMapping("/plug/resume")和@RequestMapping("list.do")。
perms: plug:resume:list 菜单权限值。这个权限值必须要对应url的Controller方法的@RequiresPermissions("plug:resume:list")一致。
ops: 按钮权限列表。一个模块除了点击菜单的权限,还有其他权限,比如点击简历管理这个菜单链接后,里面还有新增简历、修改简历、删除简历等功能按钮。
create@plug:resume:create 按钮权限值。create是国际化代码。plug:resume:create是权限值,必须与Controller方法中的@RequiresPermissions("plug:resume:create")一致。也可以直接用中文,如新增@plug:resume:create。
对应的Java代码
package com.jspxcms.plug.web.back; @Controller @RequestMapping("/plug/resume") public class ResumeController { @RequiresPermissions("plug:resume:list") @RequestMapping("list.do") public String list(...) { ... return "plug/resume/resume_list"; } @RequiresPermissions("plug:resume:create") @RequestMapping("create.do") public String create(...) { ... return "plug/resume/resume_form"; } ... }
按照上面步骤配置菜单之后,角色管理的功能权限树会读取配置文件,无需修改角色管理页面及代码。
关于“jspXCMS的菜单与权限怎么配置”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“jspXCMS的菜单与权限怎么配置”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。