English | 中文
Quick Boot is a lightweight enterprise backend scaffolding project based on Java 17 + Spring Boot 3. It is designed for admin systems, SaaS platforms, business management systems, API services, and reusable backend infrastructure modules.
This project is refined from YunaiV/ruoyi-vue-pro. Quick Boot keeps common backend foundations, adjusts module boundaries, simplifies the project structure, and focuses on becoming a lighter Spring Boot 3 backend template.
Thanks to the ruoyi-vue-pro project and its community for their open-source contributions.
Quick Boot is not intended to be a large all-in-one business platform. Its goal is to provide a clean, extensible, and maintainable Spring Boot backend foundation.
It is suitable for:
- Starting Java backend projects quickly
- Building enterprise admin APIs
- Reusing common backend infrastructure modules
- Learning and extending Spring Boot 3 projects
- Building platforms with security, tenant isolation, logs, scheduled jobs, monitoring, and infrastructure features
Quick Boot is based on YunaiV/ruoyi-vue-pro, with simplification and secondary development.
ruoyi-vue-pro is a mature open-source rapid development platform with authentication, system management, infrastructure, workflow, mall, CRM, ERP, MES, AI, IoT, and many other enterprise features. Quick Boot trims and reorganizes those foundations, mainly keeping backend scaffolding, framework components, system management, and infrastructure modules.
For detailed positioning, module differences, and recommended scenarios, see Quick Boot 与 ruoyi-vue-pro 的差异说明.
Quick Boot will preserve the required open-source credits and follow the original project's license requirements where applicable.
- Spring Boot 3 + Java 17: Modern Java backend stack
- Multi-module project structure: Clear separation between dependency management, framework components, business modules, and server entrypoint
- Centralized dependency management: Managed through
quick-dependencies - Reusable starter components: Common backend capabilities are packaged as starter modules
- MyBatis Plus integration: Simplifies database access and CRUD development
- Redis integration: Supports caching and distributed capabilities
- Druid connection pool: Provides SQL monitoring and slow SQL tracking
- Security foundation: Provides backend authentication and permission foundations
- WebSocket support: Useful for notifications and real-time messaging
- Monitoring support: Integrates Actuator and Spring Boot Admin
- Scheduled jobs: Integrates Quartz for job scheduling
- Message queue extension points: Supports RabbitMQ, Kafka, RocketMQ extension scenarios
- Excel utilities: Supports common import and export use cases
- Tenant and data permission foundations: Suitable for SaaS and enterprise permission isolation
| Category | Technology |
|---|---|
| Language | Java 17 |
| Core framework | Spring Boot 3 |
| ORM | MyBatis Plus |
| Database | MySQL |
| Cache | Redis |
| Connection pool | Druid |
| Scheduler | Quartz |
| Message queue | RabbitMQ / Kafka / RocketMQ |
| Monitoring | Spring Boot Actuator / Spring Boot Admin |
| Build tool | Maven |
quick-boot
├── quick-dependencies
│ └── Centralized dependency management
│
├── quick-framework
│ └── Framework components and reusable starter modules
│ ├── quick-common
│ ├── quick-spring-boot-starter-mybatis
│ ├── quick-spring-boot-starter-redis
│ ├── quick-spring-boot-starter-web
│ ├── quick-spring-boot-starter-security
│ ├── quick-spring-boot-starter-websocket
│ ├── quick-spring-boot-starter-monitor
│ ├── quick-spring-boot-starter-protection
│ ├── quick-spring-boot-starter-job
│ ├── quick-spring-boot-starter-mq
│ ├── quick-spring-boot-starter-excel
│ ├── quick-spring-boot-starter-biz-tenant
│ ├── quick-spring-boot-starter-biz-data-permission
│ └── quick-spring-boot-starter-biz-ip
│
├── quick-module-system
│ └── System management module
│
├── quick-module-infra
│ └── Infrastructure module
│
├── quick-server
│ └── Backend service entrypoint
│
└── sql
└── Database initialization scripts
- JDK 17+
- Maven 3.8+
- MySQL 8.0+
- Redis 6.0+
git clone https://github.com/Enter2O25/quick-boot.git
cd quick-bootCreate a database:
CREATE DATABASE quick_boot DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;Import the SQL scripts under:
sql/mysql/
Recommended configuration files:
application.yaml
application-local.example.yaml
application-local.yaml
application.yaml: Shared configuration committed to the repositoryapplication-local.example.yaml: Public local configuration templateapplication-local.yaml: Private local configuration for database, Redis, and third-party secrets
Copy the example file before local development:
cp quick-server/src/main/resources/application-local.example.yaml \
quick-server/src/main/resources/application-local.yamlThen update local database and Redis settings:
spring:
datasource:
dynamic:
datasource:
master:
url: jdbc:mysql://127.0.0.1:3306/quick_boot?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&nullCatalogMeansCurrent=true
username: ${MYSQL_USERNAME:root}
password: ${MYSQL_PASSWORD:}
data:
redis:
host: 127.0.0.1
port: 6379
database: 0
password: ${REDIS_PASSWORD:}Do not commit real database passwords, Redis passwords, API keys, tokens, or third-party platform secrets.
Run from your IDE:
quick-server/src/main/java/com/liujl/quick/server/QuickServerApplication.java
Or run with Maven:
mvn clean install -DskipTests
cd quick-server
mvn spring-boot:runDefault port:
48080
Visit:
http://localhost:48080
Quick Boot is prepared as a long-term open-source project:
- GitHub Actions CI is enabled
CONTRIBUTING.mddocuments contribution workflowSECURITY.mddocuments security reporting and secret handlingCHANGELOG.mdtracks important changes- Public configuration files use environment variable placeholders
application-local.yamlis ignored and should remain private
Planned improvements:
- Improve README and module documentation
- Add Docker Compose for one-command local infrastructure setup
- Add API documentation and sample endpoints
- Add unit and integration tests
- Improve GitHub Actions checks
- Add starter usage examples
- Document permission, tenant, and data permission modules
- Improve release notes and changelog workflow
- Provide frontend-backend integration examples
Quick Boot plans to use AI-assisted tooling for:
- Generating and improving unit tests
- Reviewing Pull Requests
- Refactoring framework and starter modules
- Detecting security and configuration risks
- Improving README, module docs, and usage examples
- Generating changelogs and release notes
- Maintaining issues, TODOs, and technical debt
- Improving readability, testability, and maintainability
Contributions are welcome in the following areas:
- Bug fixes
- Documentation improvements
- Test coverage
- Starter design improvements
- Docker / CI / release automation
- Local development experience
- More business module examples
- Simplifying unnecessary modules and historical code
- Spring Boot 3 compatibility and stability improvements
Recommended commit format:
feat: add new feature
fix: fix issue
docs: update documentation
style: adjust code style
refactor: refactor code
test: add or update tests
chore: update build, dependency, or tooling
Examples:
feat: add redis starter example
fix: resolve quartz initialization error
docs: update quick start guide
This project is licensed under the MIT License.
This project is refined from YunaiV/ruoyi-vue-pro. Thanks to the original authors and community.
English | 中文
Quick Boot 是一个基于 Java 17 + Spring Boot 3 的企业级后端快速开发脚手架,面向中后台系统、SaaS 管理平台、业务管理系统、API 服务和可复用后端基础模块的快速搭建场景。
本项目基于开源项目 YunaiV/ruoyi-vue-pro 进行精简、整理和二次封装,保留后端工程中常用的基础能力,并对项目结构、模块边界和 starter 组件进行调整,目标是沉淀一套更轻量、更适合作为后端基础脚手架的 Spring Boot 3 工程模板。
感谢 YunaiV/ruoyi-vue-pro 项目及其社区的开源贡献。
Quick Boot 的目标不是做一个“大而全”的业务系统,而是提供一套清晰、可扩展、易维护的 Spring Boot 后端基础工程。
它适合用于:
- 快速启动 Java 后端项目
- 搭建企业级中后台 API 服务
- 沉淀通用技术组件和业务模块
- 作为 Spring Boot 3 项目的学习和二次开发模板
- 构建支持权限、租户、日志、定时任务、监控等能力的基础平台
Quick Boot 基于 YunaiV/ruoyi-vue-pro 进行精简和二次开发。
ruoyi-vue-pro 是一个成熟的开源快速开发平台,提供权限认证、系统管理、基础设施、工作流、商城、CRM、ERP、MES、AI、IoT 等大量企业级功能。Quick Boot 在此基础上进行了裁剪和整理,主要保留后端脚手架、框架组件、系统管理、基础设施等核心能力,用于构建更轻量的 Java 后端快速开发模板。
更详细的定位、模块差异和适用场景,请阅读 Quick Boot 与 ruoyi-vue-pro 的差异说明。
本项目会尽量保留原项目的开源说明与致谢,并遵循原项目的开源协议要求。
- Spring Boot 3 + Java 17:使用现代 Java 后端技术栈
- 多模块工程结构:清晰拆分依赖管理、框架组件、业务模块和启动服务
- 统一依赖版本管理:通过
quick-dependencies管理项目依赖版本 - 可复用 starter 组件:将常用能力封装为独立 starter,方便按需扩展
- MyBatis Plus 集成:简化数据库访问和 CRUD 开发
- Redis 集成:支持缓存、分布式能力和常用 Redis 操作
- Druid 连接池:支持数据库连接池、SQL 监控、慢 SQL 记录等能力
- 安全认证组件:提供后端权限认证相关基础能力
- WebSocket 支持:适用于消息推送、实时通知等场景
- 监控能力:集成 Actuator、Spring Boot Admin 等监控基础能力
- 定时任务支持:集成 Quartz,支持任务调度场景
- 消息队列扩展:支持 RabbitMQ、Kafka、RocketMQ 等扩展场景
- Excel 工具能力:支持常见导入导出场景
- 多租户与数据权限:适合 SaaS 系统和企业级权限隔离场景
| 分类 | 技术 |
|---|---|
| 语言 | Java 17 |
| 核心框架 | Spring Boot 3 |
| ORM | MyBatis Plus |
| 数据库 | MySQL |
| 缓存 | Redis |
| 连接池 | Druid |
| 任务调度 | Quartz |
| 消息队列 | RabbitMQ / Kafka / RocketMQ |
| 监控 | Spring Boot Actuator / Spring Boot Admin |
| 构建工具 | Maven |
quick-boot
├── quick-dependencies
│ └── 依赖版本统一管理
│
├── quick-framework
│ └── 技术组件与通用 starter 封装
│ ├── quick-common
│ ├── quick-spring-boot-starter-mybatis
│ ├── quick-spring-boot-starter-redis
│ ├── quick-spring-boot-starter-web
│ ├── quick-spring-boot-starter-security
│ ├── quick-spring-boot-starter-websocket
│ ├── quick-spring-boot-starter-monitor
│ ├── quick-spring-boot-starter-protection
│ ├── quick-spring-boot-starter-job
│ ├── quick-spring-boot-starter-mq
│ ├── quick-spring-boot-starter-excel
│ ├── quick-spring-boot-starter-biz-tenant
│ ├── quick-spring-boot-starter-biz-data-permission
│ └── quick-spring-boot-starter-biz-ip
│
├── quick-module-system
│ └── 系统管理模块
│
├── quick-module-infra
│ └── 基础设施模块
│
├── quick-server
│ └── 后端服务启动入口
│
└── sql
└── 数据库初始化脚本
- JDK 17+
- Maven 3.8+
- MySQL 8.0+
- Redis 6.0+
git clone https://github.com/Enter2O25/quick-boot.git
cd quick-boot创建数据库:
CREATE DATABASE quick_boot DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;导入 sql/mysql/ 目录下的 SQL 脚本。
建议使用如下配置方式:
application.yaml
application-local.example.yaml
application-local.yaml
其中:
application.yaml:提交到仓库,保存通用配置application-local.example.yaml:提交到仓库,作为本地配置模板application-local.yaml:本地开发配置,保存数据库、Redis、第三方平台密钥等信息
复制本地配置模板:
cp quick-server/src/main/resources/application-local.example.yaml \
quick-server/src/main/resources/application-local.yaml重点修改数据库和 Redis 配置:
spring:
datasource:
dynamic:
datasource:
master:
url: jdbc:mysql://127.0.0.1:3306/quick_boot?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&rewriteBatchedStatements=true&nullCatalogMeansCurrent=true
username: ${MYSQL_USERNAME:root}
password: ${MYSQL_PASSWORD:}
data:
redis:
host: 127.0.0.1
port: 6379
database: 0
password: ${REDIS_PASSWORD:}不要将真实数据库密码、Redis 密码、API Key、Token 或第三方平台密钥提交到公开仓库。
使用 IDE 启动:
quick-server/src/main/java/com/liujl/quick/server/QuickServerApplication.java
或使用 Maven 启动:
mvn clean install -DskipTests
cd quick-server
mvn spring-boot:run默认服务端口:
48080
访问地址:
http://localhost:48080
为了让项目更适合作为公开开源项目长期维护,本仓库约定:
- 通过 GitHub Actions 执行 CI 检查
- 通过
CONTRIBUTING.md说明贡献流程 - 通过
SECURITY.md说明安全问题报告方式 - 通过
CHANGELOG.md记录版本变化 - 公开配置只保留环境变量占位符
application-local.yaml只用于本地开发,不提交到仓库
后续计划持续完善以下内容:
- 完善 README 和模块文档
- 增加 Docker Compose 一键启动环境
- 增加接口文档和示例接口
- 增加单元测试和集成测试
- 优化 GitHub Actions 检查
- 补充 starter 模块的使用示例
- 补充权限、多租户、数据权限等模块的使用说明
- 增加版本发布说明和 Changelog
- 提供前后端联调示例
本项目计划使用 AI 辅助维护以下开源工作:
- 自动生成和改进单元测试
- 对 Pull Request 进行代码审查
- 重构框架层和 starter 组件
- 检查潜在安全问题和配置风险
- 改进 README、模块文档和使用示例
- 生成 Changelog 和 Release Notes
- 辅助维护 Issue、TODO 和技术债务
- 提升项目的可读性、可测试性和可维护性
欢迎围绕以下方向提交 Issue 或 Pull Request:
- 修复 bug
- 完善文档
- 增加测试用例
- 优化 starter 设计
- 增加 Docker / CI / Release 自动化
- 改进本地开发体验
- 补充更多业务模块示例
- 精简不必要的业务模块和历史代码
- 提升 Spring Boot 3 兼容性和稳定性
推荐使用以下提交格式:
feat: 新增功能
fix: 修复问题
docs: 修改文档
style: 代码格式调整
refactor: 代码重构
test: 增加或修改测试
chore: 构建、依赖或工具调整
示例:
feat: add redis starter example
fix: resolve quartz initialization error
docs: update quick start guide
This project is licensed under the MIT License.
本项目基于 YunaiV/ruoyi-vue-pro 进行精简和二次开发,感谢原项目作者和社区的开源贡献。