接私活接多了你会发现,企业管理系统这类活儿,骨架基本是同一套东西:用户管理、角色权限、菜单配置、部门组织、操作日志。每个项目从零写一遍,光这些"标配"就要耗掉你大半个月。若依(RuoYi)就是把这个活替你干完了的答案。
GitHub 8.6k Star,国内 Java 圈知名度最高的开源后台管理系统之一。下载、导库、构建、启动,一个下午不到,上面那堆标配功能就能全部跑起来,剩下的时间你只管写自己的业务代码。
我把 4.8.3 版从环境搭建到登录后台完整走了一遍,7 张后台截图都是实测环境里录的。这篇先把若依是什么、能干什么讲清楚,再把手把手搭建过程写出来。
若依是什么来头
一句话:给企业管理系统打底的半成品底座。
作者 yangzongzhuan,2019 年发布,维护到现在(仓库 2026 年还有提交)。官方定位是「快速开发平台」——不是成品软件,而是让你拿它当底座、往上盖自己业务的框架。
- 版本:4.8.3(本文实测版)
- 协议:MIT,商用、改代码、闭源交付都不限
- 技术栈:Java 17 + SpringBoot 4.0.3 + Shiro 2.1.0 + MyBatis + Thymeleaf + Druid
- GitHub:8.6k Star / 2.4k Fork
作者原话是「没有任何其它重度依赖,直接运行即可用」。这点我实测有发言权——4.8.3 连 Redis 都不需要(老版本要,新版用 Ehcache 本地缓存替代了),环境里只要 JDK 17 + MySQL 就能跑。这门槛,在 Java 后台系统里算低的了。
另外提一句:若依有两套形态。本文测的是单体版,它还有前后端分离版(Vue + SpringBoot)和微服务版,按项目需要选。
若依能干什么
对号入座,这几类人用得上:
- 接外包、私活的开发者:客户要个管理后台,若依砍掉一个月工期,省下的就是利润
- 公司内部系统:OA、CRM、运营后台、数据平台,不少公司内部系统就是若依改的
- 学生党:Java 课设、毕设,功能齐全,界面答辩老师也熟
判断标准其实就一条:项目里但凡有「登录 + 权限 + 增删改查」,用若依就比从零手写划算。
核心功能亮点
按后台菜单捋一遍,全是现成的:
权限体系(RBAC 全套)
- 用户 / 角色 / 菜单 / 部门 / 岗位五个管理模块,权限颗粒度到按钮级
- 数据权限按部门切——「市场部的人只能看市场部的单子」这种需求,配一下就行,不用写代码
代码生成器(杀手锏)
- 连上业务表,选表,一键生成 Entity、Mapper、Service、Controller、前端页面全套 CRUD
- 单表、树表、主子表三种模板
- 不少人选若依就是冲着它来的。生成出来的代码规范、能直接用
系统运维工具
- 定时任务:Quartz 在线管理,改 cron 不用重启
- 操作日志 / 登录日志:谁在什么时间干了什么,全有记录
- 在线用户:谁在线一眼看到,能强退
- 服务监控:CPU、内存、磁盘在线看
- 缓存监控:缓存列表 + 查询
- 系统接口:Swagger 文档自动生成
配置管理
- 数据字典:下拉选项集中管理,运营改选项不用找你改代码
- 参数设置:系统级开关集中配
框架能力
- 多数据源支持、接口限流、防止重复提交
- 表单构建器(拖拽生成表单)
- 通知公告、导出 Excel
光后台左侧菜单就是 4 个一级栏目、20 个子功能,全部开箱即用。
界面实拍
登录页。蒲公英背景是若依的标志,从早期版本用到现在,很多用过的人一看就认出来:

进后台是首页,显示当前版本和技术选型:

系统管理
用户管理是日常点开最多的页面。左边组织架构树,右边用户列表,搜索条件、批量导入导出都是现成的:

用户状态的绿色开关直接点就能切换启用/停用,不用进编辑页。
菜单管理是整个权限体系的核心,系统里能点出什么菜单、什么按钮,全由它控制:

注意「权限标识」那列,比如 system:user:add——后端接口鉴权靠它,权限颗粒度到按钮级就是这么来的。角色管理就是把菜单勾一遍,逻辑相通,我没单独截图。
系统工具
代码生成器在「系统工具」里。空库看不到内容,连上业务表后,表列表会出现在这:

「导入」选表 → 配字段 → 点「生成」,前后端全套代码到手。
系统监控
服务监控页,CPU、内存、磁盘三个卡片加服务器信息:

(截图里内存使用率 94% 是测试机同时跑了好几个服务,环境问题,不是软件问题。)
定时任务:

任务用 cron 配,旁边「生成表达式」按钮是给不熟 cron 的人准备的,点一点就出表达式。状态开关直接切,不用重启。
实测心得
几个容易卡人的地方,我记下来,你照着搭能少走弯路:
JDK 版本,别拿老教程对。 我对若依的印象还停留在「Java 8 能跑」的年代,先下了 JDK 8 的安装包,回头翻源码 pom.xml:<java.version>17</java.version>,白下。4.8.3 是 SpringBoot 4 技术栈,JDK 17 起步,网上大量 4.7 时代的教程(Java 8、装 Redis)都过时了。
SQL 要导两个文件。 ry_20260319.sql 建业务表,quartz.sql 建定时任务表,一共 32 张。只导前一个,定时任务模块一点就报错。
Maven 首次构建记得换源。 默认从中央仓库拉依赖,国内速度感人。settings.xml 里配个阿里云镜像,首次构建 2 分钟完事。
验证码默认开着,调试嫌烦可以关。 application.yml 里 captchaEnabled 改成 false,每次登录不用再输验证码。上线前记得改回来。
跑起来之后的体验:登录、点菜单、翻页面,响应都挺利索。截图里那 7 个页面(用户、菜单、代码生成、监控、任务)全部是点开就能用,没有半成品模块。这就是它跟很多「演示很好看、细节全是坑」的开源项目的区别——8.6k Star 是一行行代码换的。
上手搭建
环境备好的可以直接跳到第四步。
1. 装 JDK 17
官网或清华镜像下 OpenJDK 17,解压,配好 JAVA_HOME 和 PATH。
2. 装 Maven 并换阿里云源
下载 Maven 3.9.x,解压,改 conf/settings.xml,在 <mirrors> 里加:
<mirror>
<id>aliyun</id>
<mirrorOf>*</mirrorOf>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>3. 建库导表
MySQL 里建库 ry(utf8mb4),导入两个 SQL:
ry_20260319.sql ← 业务表
quartz.sql ← 定时任务表4. 改配置
ruoyi-admin/src/main/resources/ 下两个文件:
application-druid.yml:数据库地址、用户名、密码改成你的application.yml:server.port默认 80,建议改成 8890 之类
5. 构建运行
mvn clean package -DskipTests
java -jar ruoyi-admin/target/ruoyi-admin.jar浏览器打开 http://localhost:8890,账号 admin,密码 admin123。
用我打包的成品可以跳过 2、5 两步:包里带了预编译好的 jar,JDK 17 装好直接java -jar ruoyi-admin.jar。数据库密码在config/application-druid.yml里改,改完重启生效,不用碰源码、不用重新构建。
说几个缺点
- 前端是 jQuery + Bootstrap 的风格。页面工整、能用,但不是 Vue3 那种现代观感。要现代风就用它的前后端分离版
- 单体版是服务端渲染。页面由 Thymeleaf 在后端拼好,前后端不分离,前后端协作分工的项目不合适
- 网上「若依」改装包鱼龙混杂。名字太响,各种二次打包、带后门、改过密码的版本满天飞,来源不明的包别碰
- 默认本地缓存,集群部署要自己动手。4.8.3 用 Ehcache 本地缓存,多机部署的会话共享得自己换方案——单机用完全没问题
反过来说,它的功能完成度、中文文档、社区热度都是国内后台系统第一梯队。遇到问题基本一搜就有答案。
常见问题
源码获取
上面测试用的完整包我整理好放夸克网盘了,免费取:
- 预编译 ruoyi-admin.jar(含依赖,89MB)——不用装 Maven、不用构建,JDK 17 装好直接跑
- 外置 config/——改数据库密码、端口不用动源码,开箱即跑
- 官方完整源码(RuoYi-4.8.3)——要二次开发、改代码的用这份
- 原版 LICENSE(MIT)+ 免责声明 + 跳转文件
自己从官方拉也行,就是环境、依赖、配置、目录结构得自己理一遍。包里是跑通之后才打的——要省这几步,直接拿下面这个。
两个小提醒:
- 建议先「转存到自己网盘」再下载——直接下载的链接容易失效,转存后就是你自己的了,随时能下;
- 手机上操作:点开链接 → 右下角「保存到网盘」→ 回夸克 App 的「我的网盘」里下载。
自己动手的成本:这东西的坑不在装,在环境。JDK 17(低了不行)、Maven 3.9、MySQL 8 三样都得自己备齐;Maven 不换阿里云镜像,首次构建就卡在拉依赖上——我配了源,2 分钟完事。建库要导两个 SQL,ry_20260319.sql 是业务表、quartz.sql 是定时任务表,两个都不能漏。最后改两个 yml:数据库连接和端口(默认 80,建议改掉)。环境熟的人半小时能跑起来,第一次碰 Java 项目的人耗一晚上很正常。包里是预编译好的 jar,JDK 17 装好直接 java -jar,上面第 2、5 两步可以跳过。
装之前确认两件事:JDK 17 装好、MySQL 能用。其他照上面走就行。