ruoyi-vue文档:介绍 | RuoYihttp://doc.ruoyi.vip/ruoyi-vue/
介绍:RuoYi-Vue基于SpringBoot、Spring Security、Jwt、Vue的前后端分离的后台管理系统。
文件结构
com.ruoyi
├── common // 工具类
│ └── annotation // 自定义注解
│ └── config // 全局配置
│ └── constant // 通用常量
│ └── core // 核心控制
│ └── enums // 通用枚举
│ └── exception // 通用异常
│ └── json // JSON数据处理
│ └── utils // 通用类处理
│ └── xss // XSS过滤处理
├── framework // 框架核心
│ └── aspectj // 注解实现
│ └── config // 系统配置
│ └── datasource // 数据权限
│ └── interceptor // 拦截器
│ └── manager // 异步处理
│ └── shiro // 权限控制
│ └── web // 前端控制
├── ruoyi-generator // 代码生成(不用可移除)
├── ruoyi-quartz // 定时任务(不用可移除)
├── ruoyi-system // 系统代码
├── ruoyi-admin // 后台服务
├── ruoyi-xxxxxx // 其他模块
其有以下功能:
目录
1.分页实现
分页查询返回数据。
2.导入导出
在实际开发中经常需要使用导入导出功能来加快数据的操作。在项目中可以使用注解来完成此项功能。 在需要被导入导出的实体类属性添加@Excel
注解。来实现对数据的操作:例如排序,
3.上传下载
4.权限注解
用注解实现对类,实例,方法调用或访问控制。
例如:@RequiresRoles
注解用于配置接口要求用户拥有某(些)角色才可访问,它拥有两个参数
5.事务回滚
使用@Transactional实现
6.异常处理
通常一个web
框架中,有大量需要处理的异常。比如业务异常,权限不足等等。前端通过弹出提示信息的方式告诉用户出了什么错误。 通常情况下我们用try.....catch....
对异常进行捕捉处理,但是在实际项目中对业务模块进行异常捕捉,会造成代码重复和繁杂, 我们希望代码中只有业务相关的操作,所有的异常我们单独设立一个类来处理它。全局异常就是对框架所有异常进行统一管理。 我们在可能发生异常的方法里throw
抛给控制器。然后由全局异常处理器对异常进行统一处理。 如此,我们的Controller
中的方法就可以很简洁了。
与业务相关的异常处理(在com.exception下)
7.参数验证
spring boot
中可以用@Validated
来校验数据,如果数据异常则会统一抛出异常,方便异常中心统一处理。
8.系统日志
使用@Log注解实现记录日志
9.数据权限
对不同的使用者,进行数据访问权限控制
10.多数据源
在实际开发中,经常可能遇到在一个应用中可能需要访问多个数据库的情况,在项目中使用注解来完成此项功能。
11.代码生成
大部分项目里其实有很多代码都是重复的,几乎每个基础模块的代码都有增删改查的功能,而这些功能都是大同小异, 如果这些功能都要自己去写,将会大大浪费我们的精力降低效率。所以这种重复性的代码可以使用代码生成
12.定时任务
在实际项目开发中Web应用有一类不可缺少的,那就是定时任务。 定时任务的场景可以说非常广泛,比如某些视频网站,购买会员后,每天会给会员送成长值,每月会给会员送一些电影券; 比如在保证最终一致性的场景中,往往利用定时任务调度进行一些比对工作;比如一些定时需要生成的报表、邮件;比如一些需要定时清理数据的任务等。 所以我们提供方便友好的web界面,实现动态管理任务,可以达到动态控制定时任务启动、暂停、重启、删除、添加、修改等操作,极大地方便了开发过程。
13.系统接口
利用注解自动生成接口文档,不会用。
14.防重复提交
访问接口时,防止短时间内多次重复提交
接口方法上添加@RepeatSubmit
注解即可