You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
17 hours ago | |
|---|---|---|
| docker | 2 months ago | |
| sql/mysql | 2 months ago | |
| src | 17 hours ago | |
| .editorconfig | 2 months ago | |
| .gitattributes | 2 months ago | |
| .gitignore | 2 days ago | |
| Dockerfile | 2 months ago | |
| LICENSE | 2 months ago | |
| README.md | 2 months ago | |
| pom.xml | 1 month ago | |
README.md
youlai-boot
Spring Boot 4 企业级权限管理系统后端
English | 简体中文
🎯 项目定位
一套 Spring Boot 4 后端权限管理系统,配套前端 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 版本 |
| 🔌 实时通信 | 内置 SSE 推送服务(在线用户数、字典同步、通知广播) |
| 📱 生态完整 | 配套移动端 youlai-app(UniApp)+ 完整技术文档 |
🏗️ 技术栈
┌─────────────────────────────────────────────┐
│ youlai-boot │
│ │
│ ┌───────────┐ ┌──────────┐ ┌───────────┐ │
│ │ Spring │ │ MyBatis │ │ Redis │ │
│ │ Security │ │ Plus │ │ + JWT │ │
│ └─────┬─────┘ └────┬─────┘ └─────┬─────┘ │
│ │ │ │ │
│ ┌─────▼──────────────▼─────────────▼───┐ │
│ │ Spring Boot 4 │ │
│ │ JDK 17 (LTS) │ │
│ └───────────────────────────────────────┘ │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Swagger │ │ XXL-JOB │ │ MinIO │ │
│ │ (接口文档) │ │(定时任务) │ │(文件存储) │ │
│ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ MySQL 8.0 · Redis 7 · Docker Compose │
└─────────────────────────────────────────────┘
↑ 系统运行效果(待补充实际截图)
🚀 快速开始
环境要求
| 组件 | 版本 |
|---|---|
| JDK | 17+ |
| MySQL | 8.0+ / 5.7+ |
| Redis | 6.0+ |
本地启动
# 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
默认账号:admin / 123456
Docker 部署
cd docker && docker-compose up -d
📁 目录结构
youlai-boot/
├── 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 依赖
🌐 相关生态
| 项目 | 技术栈 | 定位 |
|---|---|---|
| vue3-element-admin | Vue 3 + Element Plus | PC 管理前端(主推) |
| youlai-app | Vue 3 + UniApp | 移动端 App |
| youlai-boot-tenant | Spring Boot 4 | SaaS 多租户版本 |
| youlai-boot-flex | Spring Boot 3 + MyBatis-Flex | MyBatis-Flex 版 |
| youlai-nest | NestJS + TypeORM | Node.js 后端 |
| youlai-gin | Go + Gorm | Go 后端 |
| youlai-django | Django + DRF | Python 后端 |
| youlai-thinkphp | ThinkPHP 8 | PHP 后端 |
| youlai-aspnet | ASP.NET Core | C# 后端 |
六种后端共享同一套 RESTful API 规范 和 数据库结构,前端可无缝切换。
📘 文档资源
| 资源 | 地址 |
|---|---|
| 📖 完整文档站 | docs.youlai.tech |
| 🖥️ 在线预览(前端) | vue.youlai.tech |
| 📱 在线预览(移动端) | app.youlai.tech |
| 🔗 接口文档 | 启动后访问 /doc.html |
📊 项目统计
🤝 参与贡献
欢迎 Issue、PR 和 Star!详见 贡献指南。
📄 开源协议
本项目基于 Apache License 2.0 开源,可免费用于商业项目。
关注「有来技术」,获取最新动态与技术分享
微信搜索「有来技术」或扫码关注