一、框架概述与技术背景
若依 (RuoYi) 是基于 Spring Boot 的权限管理系统,是中国 Java 低代码领域的代表性开源框架。其名称'若依'取自'若你'的谐音,体现了'为你定制'的开发理念。
技术架构全景
前端层:Vue2 + Element UI + Axios
网关层:Spring Cloud Gateway (微服务版本)
应用层:Spring Boot + Spring Security + MyBatis
数据层:MySQL + Redis + Druid 连接池
工具层:代码生成器 + 监控中心 + 定时任务
二、核心特长分析
1. 完备的权限管理体系
若依的权限系统设计精巧,实现了 RBAC(基于角色的访问控制) 模型的完整闭环:
// 权限注解使用示例
@RestController
public class SysUserController {
@PreAuthorize("@ss.hasPermi('system:user:list')")
@GetMapping("/list")
public TableDataInfo list(SysUser user) {
// 只有拥有 system:user:list 权限的用户可以访问
startPage();
List<SysUser> list = userService.selectUserList(user);
return getDataTable(list);
}
@PreAuthorize("@ss.hasRole('admin')")
@PostMapping("/resetPwd")
public AjaxResult resetPwd(@RequestBody SysUser user) {
// 只有 admin 角色可以重置密码
return toAjax(userService.resetPwd(user));
}
}
权限控制特色:
- 菜单权限:动态菜单渲染,基于用户角色显示可用菜单
- 按钮权限:前端按钮级控制,后端接口级验证
- 数据权限:基于部门的数据隔离,支持自定义数据范围
- 操作权限:完整的操作日志记录,支持行为审计
2. 高度模块化的系统设计
若依采用经典的三层架构,但进行了深度优化:
// 典型的分层结构示例
@Service
public class SysUserServiceImpl implements {
SysUserMapper userMapper;
SysRoleService roleService;
List<SysUser> {
userMapper.selectUserList(user);
}
}
DataScope {
String ;
String ;
}


