基本介绍 ruoyi是基于springboot+vue的前后端都有的项目,现在社区已经扩展到基本什么都有实现版本。 项目总体架构是: ruoyi-admin:后台管理系统的一些controller ruoyi-common:通用代码,一些
ruoyi是基于springboot+vue的前后端都有的项目,现在社区已经扩展到基本什么都有实现版本。
项目总体架构是:
- ruoyi-admin:后台管理系统的一些controller
- ruoyi-common:通用代码,一些工具类
- ruoyi-framework:框架代码
- ruoyi-system:系统代码,放得是系统的服务
- ruoyi-generator:代码自动生成(非必须)
- ruoyi-quartz:定时任务(非必须)
- ruoyi-ui:前端vue项目
其中ruoyi-generator和ruoyi-quartz是一个系统非必须的功能,本着遵循最小系统的原则,即能使系统正常运行的最小功能单元。我们以后学习会跳过这两个组件模块的学习,因为我们只学习ruoyi的系统的架构及思路,功能的扩展不是我们考虑范围。
ruoyi的数据库表结构如下:
可以看到减去代码生成和定时任务后的数据库表只有不到20张,符合我们的最小系统的要求。如果一上来就几十上百张表,那可谓无从下手,无法分别主次。
接下来看看项目预览:
从三张图可以看出,ruoyi系统的整体功能,大概包括了几个重点:
用户管理,权限管理,日志管理,系统监控等功能,我们如果要各个击破,必须分清主次,选一条主线进行深入阅读,这里鄙人选用权限管理作为入口。
权限管理我们要学习框架使用的是什么权限模型,用户登录和操作怎么鉴权,用户的权限资源有哪些,前后端怎么实现动态路由,前端怎么根据权限实现动态渲染,带着这些疑问,我们来开始源码阅读之旅。