新项目,从0到1,SpringBoot+Vue.js权限管理系统,拿去做毕设

大家好,我是 jonssonyan

最近把以前做的权限管理系统重新整理了一下(将一些不规范的地方规范了一下,并且在关键地方写了注释),代码全部开源,这个项目是以现在主流的前后端分离模式开发的,包含前端(authority-ui)和后端(authority)两个工程,项目的开源地址在文章的最后

适宜人群

你可以借助本项目,学习 Java、SpringBoot、MybatisPlus、Shiro、JWT …

一个系统中权限管理是最基础的功能,你可以将本项目作为脚手架,在它的基础上进行二次开发,可以提高你开发软件的速度。

技术栈

后端:

  • JDK 1.8
  • MySQL 5.2.29
  • SpringBoot
  • MybatisPlus ORM 框架
  • Shiro 权限控制
  • JWT 单点登录
  • Hibernate Validator 参数校验
  • Swagger2 API 文档工具

前端:

  • JavaScript
  • Vue.js
  • Element
  • Axios
  • Node v14.17.0
  • yarn 1.22.21

项目简介

基于 SpringBoot 和 Vue.js 的权限管理系统,项目中没有涉及到过多的业务,主要是权限系统的设计与实现,基于 RBAC 权限模型,实现用户->角色->权限之间的关系,一个用户拥有一个或者多个角色,角色拥有多个权限,并且系统还实现了角色和菜单的动态关联。

以下是数据库模型的关系图:

项目的 SQL 文件在https://github.com/jonssonyan/authority/blob/master/docs/sql/在运行项目之前需要先将数据库:authority 建好,数据库中一共有 9 张表,user 表中默认有两个账户,分别是管理员账户和普通用户账户,当你启动好项目之后可以直接使用默认的账户进行登录,当然你也可以注册一个账户,新账户默认的角色是 user,也就是普通用户。

  • 用户名: admin 密码: 123456 (管理员角色)
  • 用户名: user1 密码: 123456 (普通用户角色)

登录管理员账户之后,自然看到的菜单更多,权限最全。管理员账户可以为每个账户分配角色,并且可以为角色授权,如果管理员将角色为 user 的查询分类的权限收回,那么普通用户账户查询分类的时候就会提示“没有权限”。

此时登录普通用户角色的账户,将不会有查询分类的权限。

项目的主要菜单是用户管理,角色管理,权限管理,实现了用户,角色,权限的动态控制,分类管理,商品管理,订单管理只是为了展示权限控制的效果,并没有实际的作用。另外角色和菜单也是动态关联的,角色表 role 和菜单表 menu_list,通过第三张表role_menu_list进行多对多关联。

视频教程

如果你看文字版教程看不懂,可以看我录制的视频教程。

项目介绍:https://www.bilibili.com/video/BV19U421d7CM/

项目部署:https://www.bilibili.com/video/BV1Fy421h7me/

项目开源地址

Spring Boot+Vue.js 权限管理系统前端: https://github.com/jonssonyan/authority-ui

Spring Boot+Vue.js 权限管理系统后端: https://github.com/jonssonyan/authority

欢迎 PR,感谢 Star

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/386787.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

二叉树基础总结

目录 树的定义: 深度和高度: 二叉树 由来 二叉树种类: 满二叉树: 完全二叉树: 严格二叉树(Strict Binary Tree): 平衡二叉树(Balanced Binary Tree)&…

Android ·移动应用开发 创建第一个Android项目

文章目录 一、创建第一个Android项目1.1 准备好Android Studio1.2 运行程序1.3 程序结构是什么app下的结构res - 子目录(所有图片、布局、字符串等资源)AndroidManifest.xml 有四大组件,程序添加权限声明 Project下的结构 二、开发android时&…

顾问聘请协议(模板)

甲方:________________   乙方:________________ 诚信合作是一切事业发展的基础,外部智力是企业进步的源泉。甲、乙双方经友好协商达成本协议,甲方愿意聘请乙方为特邀管理顾问,乙方愿按本协议内容与甲方合作。 一、合…

算法学习——LeetCode力扣二叉树篇8

算法学习——LeetCode力扣二叉树篇8 669. 修剪二叉搜索树 669. 修剪二叉搜索树 - 力扣(LeetCode) 描述 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high…

Git中Idea操作git及Git Flow

目录 一、Idea中使用Git 1.idea配置Git和Gitee 2.实践操作 1.将本地项目推送到远程 2.从远程库克隆项目到本地 二、Git Flow 1.什么是Git Flow 2.工作流程 3.实践操作 一、Idea中使用Git 1.idea配置Git和Gitee 第一步:设置git.exe的安装路径 在设置中的…

[计算机提升] 备份系统:设置备份

6.5 备份系统:设置备份 1、进入到控制面板系统和安全\备份和还原,点击右侧的设置备份: 2、在弹出的设置备份对话框中,选择要保存的位置,点击下一步开始备份。 3、选择要备份的内容。根据需要选择即可。这种备份的…

计算机毕业设计springboot_vue房屋租赁系统_ku668

1.掌握Html,Css,JavaScript等基础编程语言。 2.掌握Vue框架,node环境,数据库等知识。 3.掌握开发系统的基本流程。 …

【原创 附源码】Flutter集成Apple支付详细流程(附源码)

最近有时间,特意整理了一下之前使用过的Flutter平台的海外支付,附源码及demo可供参考 这篇文章只记录Apple支付的详细流程,其他相关Flutter文章链接如下: 【原创 附源码】Flutter集成谷歌支付详细流程(附源码) 【原创 附源码】F…

爬虫——ajax和selenuim总结

为什么要写这个博客呢,这个代码前面其实都有,就是结束了。明天搞个qq登录,这个就结束了。 当然也会更新小说爬取,和百度翻译,百度小姐姐的爬取,的对比爬取。总结嘛!!!加…

VUE基础知识(JAVA后端入门篇)

VUE基础知识(JAVA后端入门篇) Vue是一套前端框架,免除原生JavaScriptr中的DOM操作,简化书写基于MVVM(Model–View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上Vue.js - 渐进式 JavaScrip…

JSP知识点

1、JSP概述 1.1 什么是JSP html java代码 JSP动态标签 jsp JavaServer page 在静态页面上添加动态信息就可以了,如果是Servlet还需要一行一行的输出。 通常在前台开发人员给出静态页面后,后台开发人员只需在静态页面中添加动态信息即可&#xff…

算法学习——LeetCode力扣回溯篇3

算法学习——LeetCode力扣回溯篇3 491. 非递减子序列 491. 非递减子序列 - 力扣(LeetCode) 描述 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。…

鸿蒙视频播放器,主要包括视频获取和视频播放功能:

鸿蒙视频播放器,主要包括视频获取和视频播放功能: 1 获取本地视频或者网络视频。 2 通过media.createAVPlayer创建播放器AVPlayer,然后进行视频播放。 3 通过VideoController进行AVPlayerState的状态管理,如开始,停止&…

【Linux】yum软件包管理器

目录 Linux 软件包管理器 yum 什么是软件包 Linux安装软件 查看软件包 关于rzsz Linux卸载软件 查看yum源 扩展yum源下载 Linux开发工具 vim编辑器 上述vim三种模式之间的切换总结: 命令模式下,一些命令: vim配置 Linux 软件包管理…

【VTKExamples::PolyData】第二十七期 KochanekSpline

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例KochanekSpline & KochanekSplineDemo,并解析接口vtkParametricSpline & vtkParametricFunctionSource,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,…

ros自定义msg记录

文章目录 自定义msg1. 定义msg文件2. 修改 package.xml3. 修改 CMakeLists.txt4. message_publisher.py5. message_subscriber.py6. 运行 catkin build 测试 自定义msg ros 版本:kinetic 自定义test包的文件结构如下 |-- test | |-- CMakeLists.txt | |-- msg…

x86汇编通用寄存器用途一览

文章目录 写在前面通用寄存器参考资料 写在前面 intel官方文档链接:Intel64和IA-32架构软件开发者手册 具体在Combined Volume Set of Intel 64 and IA-32 Architectures Software Developer’s Manuals这本手册 (五千页我的天。。。) 不想…

代码随想录算法训练营DAY17 | 二叉树 (4)

一、LeetCode 110 平衡二叉树 题目链接: 110.平衡二叉树https://leetcode.cn/problems/balanced-binary-tree/ 思路:设置深度计算函数,进行递归处理。 class Solution {public boolean isBalanced(TreeNode root) {if(root null){return true;}boolean…

maven创建webapp+Freemarker组件的实现

下载安装配置maven Maven官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘123云盘为您提供Maven最新版正式版官方版绿色版下载,Maven安卓版手机版apk免费下载安装到手机,支持电脑端一键快捷安装https://www.123pan.com/s/9QRqVv-TcUY.html链接为3.6.2-3.6.3的版本 下载解…

【FPGA】VHDL:八段码到8421BCD码转换电路

目录 EDA设计基础练习题 : 实验要求如下: 代码 八段码到8421BCD码转换电路 8421BCD码到八段码转换电路 八段码到8421BCD~运行结果展示 8421BCD转八段码~运行结果展示 特别注意 软件:Quartus II 13.0 (64-bit) 语言:VHDL E…