新项目,从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进行多对多关联。

视频教程

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

项目介绍:www.bilibili.com/video/BV19U...

项目部署:www.bilibili.com/video/BV1Fy...

项目开源地址

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

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

欢迎 PR,感谢 Star

相关推荐
q***697710 分钟前
【Spring Boot】统一数据返回
java·spring boot·后端
v***598311 分钟前
DeepSeek API 调用 - Spring Boot 实现
windows·spring boot·后端
Hollis Chuang11 分钟前
Spring Boot 4.0 正式发布,人麻了。。。
java·spring boot·后端·spring
Moshow郑锴33 分钟前
实战分享:用 SpringBoot-API-Scheduler 构建 API 监控闭环 —— 从断言验证到智能警报
java·spring boot·后端·任务调度
金融数据出海1 小时前
日本股票市场渲染 KlineCharts K 线图
前端·后端
1***t8271 小时前
将 vue3 项目打包后部署在 springboot 项目运行
java·spring boot·后端
疯狂的程序猴1 小时前
iOS 日志管理的工程化实践 构建从开发调试到系统日志分析的多工具协同体系
后端
申阳2 小时前
Day 17:03. 基于 Tauri 2.0 开发后台管理系统-登录页面开发
前端·后端·程序员
疯狂的程序猴2 小时前
Transporter 在 iOS 上架流程中的角色变化 本地上传工具的定位、局限与多工具协作趋势分析
后端
N***H4862 小时前
使用Springboot实现MQTT通信
java·spring boot·后端