Ruoyi介绍:

RuoYi(若依)​ 是一款非常受欢迎的 Java EE 企业级后台管理快速开发框架。它的核心定位是帮开发者省去重复搭建基础后台(如登录、权限、日志等)的时间,让你能直接专注于业务代码的编写。

以下是关于 RuoYi 的核心介绍:

1. 核心定位与特点

  • 完全开源免费:个人与企业均可免费使用,MIT 协议。

  • 开箱即用:内置了后台管理所需的几乎所有通用功能模块(用户、角色、菜单、部门、字典、日志、定时任务等)。

  • 高效率:自带强大的代码生成器,只需设计好数据库表,就能一键生成前后端 CRUD 代码,极大提升开发速度。

  • 权限完善:基于 RBAC(角色基于访问控制)模型,支持按钮级权限、数据权限(如只能看自己部门的数据)控制。

2. 常见版本(分支)

RuoYi 根据技术栈和架构不同,官方维护了几个主流版本,你可以按需选择:

  • RuoYi(单体不分离版):最经典的版本。后端 Spring Boot + Thymeleaf,前端 Bootstrap。适合传统单体应用或需要服务端渲染的场景。

  • RuoYi-Vue(前后端分离版):目前使用最广泛的版本。后端 Spring Boot + Spring Security/Jwt,前端 Vue + Element UI(也有 Vue3 + Element Plus 版本)。适合大多数现代 Web 项目。

  • RuoYi-Cloud(微服务版):基于 Spring Cloud & Alibaba 生态(Nacos, Sentinel, Gateway 等),适合大型分布式系统。

  • RuoYi-App:基于 uniapp 的移动端方案,支持 H5、小程序、App。

3. 典型内置功能

  • 系统管理:用户、角色、菜单(支持多级、按钮权限)、部门(树形结构)、岗位、字典、参数配置、通知公告。

  • 系统监控:操作日志、登录日志、在线用户、服务监控(CPU/内存)、缓存监控(Redis)、SQL 监控(Druid)、定时任务。

  • 开发工具:代码生成(支持单表、树表、主子表)、系统接口(Swagger/Knife4j)、表单构建器。

4. 资源地址

  • 官网:http://ruoyi.vip

  • 在线文档:http://doc.ruoyi.vip

  • 源码(Gitee,主要托管):https://gitee.com/y_project/RuoYi

如果你是 Java 开发者,需要做管理后台、CMS、OA 或中小型 ERP 系统,RuoYi 是一个非常省心且社区活跃的选择。

Ruoyi all-in-one部署例子:

ruoyi架构:

ruoyi实现:整体是典型的前后端分离 + 反向代理 + 缓存架构:

Nginx 作为入口,负责静态资源、反向代理和负载均衡:

前端静态资源(Vue 打包后的 dist)由 Nginx 直接返回,API 请求通过 proxy_pass转发给后端服务

Spring Boot(RuoYi)处理业务逻辑

Redis 用于会话、缓存和临时数据 

一.环境搭建:

依赖

版本要求

JDK

>= 1.8(推荐 1.8)

Maven

>= 3.0

MySQL

>= 5.7

Redis

>= 3.0

Node.js

>= 12(前端)

二、获取项目源码:

git clone https://gitee.com/y_project/RuoYi.git

三、Mysql上初始化数据库

  1. 新建数据库,例如:ry-vue

  2. 设置字符集为 utf8mb4

  3. 依次执行项目 sql目录下的 SQL 脚本:

    • ry_xxxxxx.sql(必须)

    • quartz.sql(可选,定时任务)

四、修改后端配置

进入 ruoyi-admin/src/main/resources

数据源配置 application-druid.yml

spring:
  datasource:
    druid:
      master:
        url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
        username: root
        password: 你的密码

redis 配置 application.yml

spring:
  redis:
    host: localhost
    port: 6379
    password: 你的redis密码(无则留空)

四、前端打包

进入前端目录:

cd /opt/ruoyi/RuoYi-Vue/ruoyi-ui
npm install
npm run build:prod

#安装出问题 添加
 

npm install --registry=https://registry.npmmirror.com
npm install:安装依赖
npm run build:prod:打包生产环境代码
dist:最终上线给浏览器访问的前端文件

五、后端打包

cd /opt/ruoyi/RuoYi-Vue
mvn clean package -DskipTests
Maven 打包项目,并跳过测试。
mvnMaven 构建工具
clean:清理旧的编译文件(删除 target 目录)
package:编译代码并打成包(如 .jar / .war
-DskipTests:跳过测试用例,加快打包速度
流程:清理项目 编译 打包(不跑测试)
打包成功后,生成:
/opt/ruoyi/RuoYi-Vue/ruoyi-admin/target/ruoyi-admin.jar

六、部署 Spring Boot 后端

cd /opt/ruoyi/RuoYi-Vue/ruoyi-admin/target
java -jar ruoyi-admin.jar
检查端口:
       netstat -ntlp | grep 8080
后台启动:(方便看tail)
nohup java -jar ruoyi-admin.jar > /opt/ruoyi/ruoyi.log 2>&1 &
查看日志:
tail -f /opt/ruoyi/ruoyi.log

、部署前端到nginx和反向代理

rm -rf /usr/share/nginx/html/*
cp -r /opt/ruoyi/RuoYi-Vue/ruoyi-ui/dist/* /usr/share/nginx/html/
示例:
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /prod-api/ {
proxy_pass http://127.0.0.1:8080/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For
$proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
1. Nginx
对外提供 80 端口
负责静态资源和 API 转发
2. Spring Boot
提供后端业务接口
默认运行在 8080
3. MySQL
存储若依业务数据
默认端口 3306
4. Redis
存储缓存、会话、验证码
默认端口 6379
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐