docs: 更新项目简介与文档结构
232
README.md
@@ -1,125 +1,126 @@
|
||||
<p align="center">
|
||||
<img alt="youlai-boot" width="120" src="https://foruda.gitee.com/images/1733417239320800627/3c5290fe_716974.png">
|
||||
</p>
|
||||
<div align="center">
|
||||
|
||||
<h1 align="center">youlai-boot</h1>
|
||||
|
||||
[](https://spring.io/projects/spring-boot)
|
||||
[](https://openjdk.org/)
|
||||
[](LICENSE)
|
||||
|
||||
[](https://www.youlai.tech/docs/admin/backend/java/)
|
||||
[](https://vue.youlai.tech)
|
||||
[](https://gitee.com/youlaiorg/youlai-boot/stargazers)
|
||||
[](https://github.com/youlaitech/youlai-boot)
|
||||
|
||||
</div>
|
||||
|
||||
## 简介
|
||||
|
||||
**youlai-boot** 是一套基于 Spring Boot 4 的企业级权限管理系统后端,配套前端 [vue3-element-admin](https://gitee.com/youlaiorg/vue3-element-admin) 和移动端 [youlai-app](https://gitee.com/youlaiorg/youlai-app),并提供 **6 种语言实现**(Java / Node.js / Go / Python / PHP / C#),共享同一套 API 规范与数据库结构。适用于企业中后台管理系统的学习参考与二次开发。
|
||||
|
||||
## 核心特性
|
||||
|
||||
- 🔐 **安全体系** — Spring Security + JWT + Redis 多端互斥、令牌续期、验证码防刷
|
||||
- 🛡️ **细粒度权限** — RBAC 五级:数据 → 菜单 → 按钮 → 接口 → 字段
|
||||
- ⚡ **代码生成器** — 一键生成前后端 CRUD 代码
|
||||
- 📦 **模块齐全** — 用户、角色、菜单、部门、字典、文件、定时任务、消息中心、操作日志
|
||||
- 🌐 **多租户 SaaS** — 数据隔离 + 租户配置,独立 [youlai-boot-tenant](https://gitee.com/youlaiorg/youlai-boot-tenant) 版本
|
||||
- 🔌 **实时通信** — SSE 推送:在线用户数、字典同步、通知广播
|
||||
|
||||
## 技术架构
|
||||
|
||||
<p align="center">
|
||||
<strong>Spring Boot 4 企业级权限管理系统后端</strong>
|
||||
<img alt="youlai-boot 技术架构图" width="900" src="./docs/images/architecture/architecture.png">
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://www.youlai.tech/docs/admin/backend/java/"><img src="https://img.shields.io/badge/文档-youlai.tech-blue?style=flat-square&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2Ij48cGF0aCBmaWxsPSIjMzc4M2E0IiBkPSJNMjQ4IDExMUwzMSAxNDljMTQuNSA0LjkgMjkuNiAyMi41IDQ0LjIgMS44IDguNyAzLjEgMTcuNCAxIDEyLjhjLTIuOSA3LjItNi43IDEzLjUtMTIuOCAxNy40eiIvPjwvc3ZnPg==" alt="Documentation"></a>
|
||||
<a href="https://vue.youlai.tech"><img src="https://img.shields.io/badge/在线预览-vue.youlai.tech-10B981?style=flat-square&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgMjU2Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMjQ4IDExMUwzMSAxNDljMTQuNSA0LjkgMjkuNiAyMi41IDQ0LjIgMS44IDguNyAzLjEgMTcuNCAxIDEyLjhjLTIuOSA3LjItNi43IDEzLjUtMTIuOCAxNy40eiIvPjwvc3ZnPg==" alt="Demo"></a>
|
||||
<a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache%202.0-blue?style=flat-square"></a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://gitee.com/youlaiorg/youlai-boot/stargazers"><img src="https://gitee.com/youlaiorg/youlai-boot/badge/star.svg?style=flat-square"></a>
|
||||
<a href="https://github.com/haoxianrui/youlai-boot"><img src="https://img.shields.io/github/stars/haoxianrui/youlai-boot?style=social&label=Star"></a>
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
> [English](#) | 简体中文
|
||||
|
||||
---
|
||||
|
||||
## 🎯 项目定位
|
||||
|
||||
一套 **Spring Boot 4 后端权限管理系统**,配套前端 [vue3-element-admin](https://gitee.com/youlaiorg/vue3-element-admin),并提供 **6 种语言实现**(Java / Node.js / Go / Python / PHP / C#),共享同一套 API 规范与数据库结构。
|
||||
|
||||
**适合场景**:企业中后台管理系统的后端学习参考、二次开发基础脚手架。
|
||||
|
||||
---
|
||||
|
||||
## ✨ 核心能力
|
||||
|
||||
| 能力 | 说明 |
|
||||
|------|------|
|
||||
| 🔐 **安全体系** | Spring Security + JWT + Redis 多端互斥、令牌续期、验证码防刷 |
|
||||
| 🛡️ **细粒度权限** | RBAC 五级:数据权限 → 菜单 → 按钮 → 接口 → 字段级 |
|
||||
| ⚡ **代码生成器** | 可视化配置表单,一键生成 Entity/VO/Controller/Service/CRUD 前后端代码 |
|
||||
| 📦 **模块齐全** | 用户、角色、菜单、部门、字典、文件、定时任务、消息中心、操作日志 |
|
||||
| 🌐 **多租户 SaaS** | 数据隔离 + 租户配置,独立 [youlai-boot-tenant](https://gitee.com/youlaiorg/youlai-boot-tenant) 版本 |
|
||||
| 🔌 **实时通信** | 内置 SSE 推送服务(在线用户数、字典同步、通知广播) |
|
||||
| 📱 **生态完整** | 配套移动端 [youlai-app](https://gitee.com/youlaiorg/youlai-app)(UniApp)+ 完整[技术文档](https://www.youlai.tech/docs/admin/) |
|
||||
|
||||
## 📸 系统预览
|
||||
## 系统预览
|
||||
|
||||
**PC 端**
|
||||
|
||||
<table align="center">
|
||||
<tr>
|
||||
<td><img alt="系统预览1" width="400" src="https://www.youlai.tech/storage/blog/2026/04/12/admin_preview.jpeg"></td>
|
||||
<td><img alt="系统预览2" width="400" src="https://www.youlai.tech/storage/blog/2026/04/12/441_1x_shots_so.jpeg"></td>
|
||||
<td><img alt="PC预览1" width="400" src="./docs/images/preview/pc-01.png"></td>
|
||||
<td><img alt="PC预览2" width="400" src="./docs/images/preview/pc-02.png"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img alt="PC预览3" width="400" src="./docs/images/preview/pc-03.png"></td>
|
||||
<td><img alt="PC预览4" width="400" src="./docs/images/preview/pc-04.png"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img alt="PC预览3" width="400" src="./docs/images/preview/pc-05.png"></td>
|
||||
<td><img alt="PC预览4" width="400" src="./docs/images/preview/pc-06.png"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
**移动端**
|
||||
|
||||
## 🚀 快速开始
|
||||
<table align="center">
|
||||
<tr>
|
||||
<td><img alt="APP预览1" width="200" src="./docs/images/preview/app-01.png"></td>
|
||||
<td><img alt="APP预览2" width="200" src="./docs/images/preview/app-02.png"></td>
|
||||
<td><img alt="APP预览3" width="200" src="./docs/images/preview/app-03.png"></td>
|
||||
<td><img alt="APP预览4" width="200" src="./docs/images/preview/app-04.png"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
### 环境要求
|
||||
## 快速开始
|
||||
|
||||
| 组件 | 版本 |
|
||||
|------|------|
|
||||
| JDK | 17+ |
|
||||
| MySQL | 8.0+ / 5.7+ |
|
||||
| Redis | 6.0+ |
|
||||
**环境要求**:JDK 17+ · MySQL 8.0+ · Redis 6.0+
|
||||
|
||||
### 本地启动
|
||||
|
||||
```bash
|
||||
# 1. 克隆项目
|
||||
git clone https://gitee.com/youlaiorg/youlai-boot.git
|
||||
|
||||
# 2. 导入数据库脚本 sql/mysql/youlai_admin.sql
|
||||
|
||||
# 3. 修改 application-dev.yml 配置 MySQL 和 Redis 连接信息
|
||||
# 💡 默认已配置线上只读数据源,可直接启动体验
|
||||
|
||||
# 4. 运行 YouLaiBootApplication.java,访问 http://localhost:8000/doc.html
|
||||
```
|
||||
1. 克隆项目:`git clone https://gitee.com/youlaiorg/youlai-boot.git`
|
||||
2. 导入数据库:`sql/mysql/youlai_admin.sql`
|
||||
3. 修改配置(可选,默认已配置线上只读数据源):`src/main/resources/application-dev.yml`
|
||||
4. 启动服务,访问 http://localhost:8000/doc.html
|
||||
|
||||
默认账号:`admin` / `123456`
|
||||
|
||||
### Docker 部署
|
||||
|
||||
```bash
|
||||
cd docker && docker-compose up -d
|
||||
```
|
||||
**Docker 部署**:`cd docker && docker-compose up -d`
|
||||
|
||||
详细指南:[部署文档](https://www.youlai.tech/docs/admin/backends/java/deploy) · [开发规范](https://www.youlai.tech/docs/admin/backends/java/dev-standards)
|
||||
|
||||
## 📁 目录结构
|
||||
## 技术栈
|
||||
|
||||
| 技术 | 版本 | 说明 |
|
||||
|:-----|:-----|:-----|
|
||||
| Spring Boot | 4.0.1 | 核心框架 |
|
||||
| Spring Security | 6.x | 认证授权 |
|
||||
| MyBatis-Plus | 3.5.15 | ORM 框架 |
|
||||
| Druid | 1.2.24 | 数据库连接池 |
|
||||
| Redis + Redisson | 6.0+ / 4.1.0 | 缓存 · 会话 · 分布式锁 |
|
||||
| Caffeine | 2.9.3 | 本地缓存 |
|
||||
| XXL-Job | 3.2.0 | 分布式定时任务 |
|
||||
| Knife4j | 4.5.0 | API 文档 |
|
||||
| MapStruct | 1.6.3 | 对象映射 |
|
||||
| MinIO | 8.5.10 | 对象存储 |
|
||||
|
||||
## 目录结构
|
||||
|
||||
```
|
||||
youlai-boot/
|
||||
├── docker/ # Docker 部署编排
|
||||
├── sql/ # 数据库初始化脚本
|
||||
├── docker/ # Docker 部署编排
|
||||
├── sql/ # 数据库初始化脚本
|
||||
├── src/main/java/com/youlai/boot/
|
||||
│ ├── YouLaiBootApplication # 启动类
|
||||
│ ├── auth/ # 认证授权(登录/登出/令牌)
|
||||
│ ├── codegen/ # 代码生成器
|
||||
│ ├── common/ # 公共模块(常量/枚举/统一响应)
|
||||
│ ├── file/ # 文件服务(MinIO/本地存储)
|
||||
│ ├── framework/ # 技术基座
|
||||
│ │ ├── apidoc/ # OpenAPI/Swagger
|
||||
│ │ ├── cache/ # Redis/Caffeine 缓存
|
||||
│ │ ├── captcha/ # 图形验证码
|
||||
│ │ ├── integration/ # 短信/邮件/微信
|
||||
│ │ ├── job/ # XXL-Job 定时任务
|
||||
│ │ ├── mybatis/ # MyBatis Plus 配置
|
||||
│ │ ├── security/ # 安全过滤器/Token机制
|
||||
│ │ └── web/ # 全局异常/跨域/限流
|
||||
│ ├── message/ # SSE 消息推送
|
||||
│ └── system/ # 业务模块(用户/角色/菜单/部门)
|
||||
└── pom.xml # Maven 依赖
|
||||
│ ├── YouLaiBootApplication.java # 启动类
|
||||
│ ├── auth/ # 认证授权(登录/登出/令牌)
|
||||
│ ├── codegen/ # 代码生成器
|
||||
│ ├── common/ # 公共模块(常量/枚举/统一响应)
|
||||
│ ├── file/ # 文件服务(MinIO/本地/OSS)
|
||||
│ ├── framework/ # 技术框架层
|
||||
│ │ ├── apidoc/ # OpenAPI / Knife4j
|
||||
│ │ ├── cache/ # Redis / Caffeine 缓存
|
||||
│ │ ├── captcha/ # 图形验证码
|
||||
│ │ ├── integration/ # 短信 / 邮件 / 微信
|
||||
│ │ ├── job/ # XXL-Job 定时任务
|
||||
│ │ ├── mybatis/ # MyBatis-Plus 配置
|
||||
│ │ ├── security/ # Security / JWT / Token
|
||||
│ │ └── web/ # 全局异常 / 跨域 / 限流
|
||||
│ ├── message/ # SSE 消息推送
|
||||
│ └── system/ # 系统业务(用户/角色/菜单/部门)
|
||||
└── pom.xml # Maven 依赖管理
|
||||
```
|
||||
|
||||
## 🌐 相关生态
|
||||
## 生态矩阵
|
||||
|
||||
| 项目 | 技术栈 | 定位 |
|
||||
|------|--------|------|
|
||||
|:-----|:-------|:-----|
|
||||
| [**vue3-element-admin**](https://gitee.com/youlaiorg/vue3-element-admin) | Vue 3 + Element Plus | **PC 管理前端**(主推) |
|
||||
| [**youlai-app**](https://gitee.com/youlaiorg/youlai-app) | Vue 3 + UniApp | **移动端 App** |
|
||||
| [**youlai-boot-tenant**](https://gitee.com/youlaiorg/youlai-boot-tenant) | Spring Boot 4 | **SaaS 多租户版本** |
|
||||
@@ -132,41 +133,36 @@ youlai-boot/
|
||||
|
||||
> 六种后端共享同一套 **RESTful API 规范** 和 **数据库结构**,前端可无缝切换。
|
||||
|
||||
## 📘 文档资源
|
||||
## 文档资源
|
||||
|
||||
| 资源 | 地址 |
|
||||
|------|------|
|
||||
| **📖 完整文档站** | [docs.youlai.tech](https://www.youlai.tech/docs/admin/) |
|
||||
| **🖥️ 在线预览(前端)** | [vue.youlai.tech](https://vue.youlai.tech) |
|
||||
| **📱 在线预览(移动端)** | [app.youlai.tech](https://app.youlai.tech) |
|
||||
| **🔗 接口文档** | 启动后访问 [http://localhost:8000/doc.html](http://localhost:8000/doc.html) |
|
||||
|:-----|:-----|
|
||||
| 📖 完整文档站 | [www.youlai.tech/docs/admin](https://www.youlai.tech/docs/admin/) |
|
||||
| 🖥️ PC 端在线预览 | [vue.youlai.tech](https://vue.youlai.tech) |
|
||||
| 📱 移动端在线预览 | [app.youlai.tech](https://app.youlai.tech) |
|
||||
| 🔗 Apifox 接口文档 | [apifox.com](https://apifox.com/apidoc/shared-xxx) |
|
||||
| 🔗 本地接口文档 | [localhost:8000/doc.html](http://localhost:8000/doc.html) |
|
||||
|
||||
## 📊 项目统计
|
||||
## 参与贡献
|
||||
|
||||

|
||||
|
||||
## 🤝 参与贡献
|
||||
|
||||
欢迎 Issue、PR 和 Star!详见 [贡献指南](https://www.youlai.tech/docs/admin/faq/help)。
|
||||
欢迎提交 Issue 和 Pull Request!详见 [贡献指南](https://www.youlai.tech/docs/admin/faq/help)。
|
||||
|
||||
[](https://github.com/haoxianrui/youlai-boot/graphs/contributors)
|
||||
|
||||
## 📄 开源协议
|
||||
## 开源协议
|
||||
|
||||
本项目基于 [Apache License 2.0](LICENSE) 开源,可免费用于商业项目。
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**关注「有来技术」,获取最新动态与技术分享**
|
||||
|
||||
<br>
|
||||
|
||||
<img src="https://foruda.gitee.com/images/1737108820762592766/3390ed0d_716974.png" width="220">
|
||||
|
||||
<br>
|
||||
|
||||
*微信搜索「有来技术」或扫码关注*
|
||||
|
||||
</div>
|
||||
<p align="center">
|
||||
<img src="./docs/images/qr/wechat-offical.png" height="180" alt="有来技术公众号">
|
||||
|
||||
<img src="./docs/images/qr/wechat-personal.png" height="180" alt="个人微信">
|
||||
</p>
|
||||
<p align="center">
|
||||
<sub>公众号「有来技术」</sub>
|
||||
|
||||
<sub>添加作者微信</sub>
|
||||
</p>
|
||||
<p align="center"><em>技术交流 · 问题反馈 · 商务合作</em></p>
|
||||
|
||||
0
docs/README.md
Normal file
BIN
docs/images/architecture/architecture.png
Normal file
|
After Width: | Height: | Size: 748 KiB |
BIN
docs/images/preview/app-01.png
Normal file
|
After Width: | Height: | Size: 1.8 MiB |
BIN
docs/images/preview/app-02.png
Normal file
|
After Width: | Height: | Size: 1.9 MiB |
BIN
docs/images/preview/app-03.png
Normal file
|
After Width: | Height: | Size: 1.2 MiB |
BIN
docs/images/preview/app-04.png
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
docs/images/preview/pc-01.png
Normal file
|
After Width: | Height: | Size: 487 KiB |
BIN
docs/images/preview/pc-02.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
docs/images/preview/pc-03.png
Normal file
|
After Width: | Height: | Size: 75 KiB |
BIN
docs/images/preview/pc-04.png
Normal file
|
After Width: | Height: | Size: 72 KiB |
BIN
docs/images/preview/pc-05.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
BIN
docs/images/preview/pc-06.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
docs/images/qr/wechat-offical.png
Normal file
|
After Width: | Height: | Size: 4.1 MiB |
BIN
docs/images/qr/wechat-personal.png
Normal file
|
After Width: | Height: | Size: 306 KiB |