Enterprise-Grade Spring Boot Learning Hub
80+ Production-Ready Modules | Real-World Examples | Cloud-Native Architecture
中文 • English • Features • Quick Start • Modules • Contributing
Spring Boot Quick is a comprehensive, enterprise-grade learning platform featuring 80+ production-ready modules demonstrating real-world microservice architectures and distributed system patterns using Spring Boot, Dubbo, and Spring Cloud.
Perfect for:
- 🎓 Students & Junior Developers - Learn Spring Boot from fundamentals to advanced patterns
- 👨💼 Mid-level Engineers - Explore microservice architecture and distributed solutions
- 🏢 Architects & Tech Leads - Reference implementation for system design decisions
- 🔍 Code Reviewers - Best practices and design patterns showcase
| Feature | Description |
|---|---|
| 🎯 80+ Production Modules | Battle-tested examples covering real-world scenarios |
| 🏗️ Microservice Architecture | Dubbo, Spring Cloud, and cloud-native patterns |
| 🗄️ Multi-Database Support | MyBatis, JPA, MongoDB, HBase integration |
| 📨 Message Queue Integration | RabbitMQ, Kafka, RocketMQ, ActiveMQ examples |
| 🔐 Enterprise Security | OAuth2, JWT, Shiro, CAS authentication flows |
| ☁️ Cloud-Native Ready | Docker, Kubernetes (K8s/K3s/K3d), container orchestration |
| ⚡ Performance Optimization | Caching, async processing, connection pooling (Druid) |
| 🔍 Monitoring & Observability | Actuator, health checks, metrics, thread monitoring |
| 🛠️ Developer Tools | Swagger, Lombok, Maven Plugins, code generation |
| 📦 Multi-Environment Deploy | Profiles, assembly packing, multi-env configuration |
- Java 8+
- Maven 3.6+
- Git
# Clone repository
git clone https://github.com/vector4wang/spring-boot-quick.git
cd spring-boot-quick
# Build entire project
mvn clean install -U
# Build specific module
cd quick-swagger
mvn clean install
# Run example
mvn spring-boot:run# Run Swagger API documentation server
cd quick-swagger
mvn spring-boot:run
# Visit: http://localhost:8080/swagger-ui.html
# Run MyBatis + Druid demo
cd quick-mybatis-druid
mvn spring-boot:run
# Health check: http://localhost:8080/health
# Run JWT authentication example
cd quick-jwt
mvn spring-boot:runspring-boot-quick/
├── quick-platform/ # Foundation & Dependency Management
├──
├── 📦 Database Layer
│ ├── quick-mybatis-druid/ # MyBatis + Druid Connection Pool
│ ├── quick-jpa/ # Spring Data JPA
│ ├── quick-multi-data/ # Multi-datasource Configuration
│ ├── quick-mongodb/ # MongoDB Integration
│ └── quick-hbase/ # HBase Big Data
│
├── 📨 Message Queue & Event Streaming
│ ├── quick-rabbitmq/ # RabbitMQ with Delayed Queues
│ ├── quick-kafka/ # Apache Kafka
│ ├── quick-activemq/ # Apache ActiveMQ
│ ├── quick-rocketmq/ # Alibaba RocketMQ
│ └── quick-sse/ # Server-Sent Events (Real-time Push)
│
├── 🔐 Security & Authentication
│ ├── quick-oauth2/ # OAuth2 Authorization Server
│ ├── quick-jwt/ # JWT Token Authentication
│ ├── quick-shiro/ # Apache Shiro Framework
│ └── quick-shiro-cas/ # Shiro + CAS Single Sign-On
│
├── 🌐 Web & API Gateway
│ ├── quick-swagger/ # OpenAPI/Swagger Documentation
│ ├── quick-rest-template/ # HTTP Client Abstraction
│ ├── quick-feign/ # Declarative HTTP Client
│ └── quick-graphql/ # GraphQL Query Language
│
├── 💾 Caching & Session
│ ├── quick-redis/ # Redis Distributed Cache
│ └── quick-cache/ # Spring Cache Abstraction
│
├── 🏗️ Microservice & Distributed
│ ├── quick-dubbo/ # Dubbo RPC Framework
│ ├── quick-dubbo-nacos/ # Dubbo + Nacos Service Registry
│ ├── quick-zookeeper/ # Zookeeper Coordination
│ └── quick-saturn/ # Distributed Task Scheduling
│
├── 🛠️ Infrastructure & DevOps
│ ├── quick-container/ # Docker Containerization
│ ├── quick-package-assembly/ # Maven Assembly Packaging
│ ├── quick-config-encrypt/ # Configuration Encryption
│ └── quick-starter/ # Custom Spring Boot Starter
│
└── 📚 Utilities & Tools
├── quick-exception/ # Global Exception Handler
├── quick-log/ # Log4j Configuration
├── quick-async/ # Async Processing & Thread Pool
├── quick-batch/ # Spring Batch Processing
└── quick-vw-crawler/ # Web Crawler Framework
| Layer | Technologies | Versions |
|---|---|---|
| Framework | Spring Boot | 2.3.4.RELEASE |
| Cloud | Spring Cloud Alibaba | 2.2.5.RELEASE |
| RPC | Apache Dubbo | 2.7.11 |
| ORM | MyBatis, JPA | 3.5.6, latest |
| Message Queue | RabbitMQ, Kafka, RocketMQ | - |
| Cache | Redis | - |
| Security | Shiro, OAuth2, JWT | 1.9.1 |
| Database | Druid, MySQL, MongoDB, HBase | - |
| Container | Docker, Kubernetes | latest |
| Tools | Swagger/OpenAPI, Lombok, Maven | 2.7+ |
- 🗄️ Database: MyBatis, JPA, JDBC, MongoDB, HBase
- 📨 Message Queue: RabbitMQ, Kafka, RocketMQ, ActiveMQ
- 🔐 Security: OAuth2, JWT, Shiro, CAS
- 🌐 API: REST, GraphQL, OpenAPI/Swagger
- 💾 Cache: Redis, Spring Cache
- 🏗️ Microservices: Dubbo, Spring Cloud, Nacos
- ☁️ Cloud: Docker, Kubernetes, K3s
- 🛠️ DevOps: CI/CD, Config Management, Monitoring
Code Quality
- ✅ Clean Architecture patterns
- ✅ SOLID principles demonstration
- ✅ Exception handling best practices
- ✅ Logging standards
Performance
- ✅ Connection pooling (Druid)
- ✅ Caching strategies
- ✅ Async processing patterns
- ✅ Database query optimization
Security
- ✅ Authentication & Authorization flows
- ✅ Data encryption (MyBatis Crypt Plugin)
- ✅ Configuration encryption
- ✅ Secure API design
Scalability
- ✅ Multi-datasource architecture
- ✅ Distributed caching
- ✅ Message queue patterns
- ✅ Microservice decomposition
Q: Is this project maintained?
A: Yes! While the author primarily uses Go for new projects, this learning repository is actively maintained as a comprehensive Spring Boot reference.
Q: Can I use this in production?
A: These are learning examples. For production, apply security hardening, performance tuning, and requirements-specific modifications.
Q: Which versions should I use?
A: Recommend using (latest - 1 or 2) versions for stability. Latest versions may have undiscovered issues.
Q: How to contribute?
A: Fork → Create Feature Branch → Commit → Push → Submit PR. Ensure code compiles and runs correctly.
Q: Is there Chinese documentation?
A: See 中文部分 below.
We welcome contributions! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit changes with clear messages (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Submit a Pull Request
Contribution Guidelines:
- Ensure code compiles:
mvn clean install - Follow existing code style
- Add documentation for new modules
- Update README if adding significant features
- Test your changes thoroughly
- ⭐ 2700+ Stars on GitHub
- 🍴 927 Forks
- 📦 80+ Modules covering all enterprise patterns
- 🎓 9+ Years of continuous development and improvement
- Crawlers Framework - Web scraping toolkit
- Spark Processing - Big data examples
- Elasticsearch Guide - Search & analytics
Spring Boot Quick 是一个企业级 Spring Boot 学习平台,包含 80+ 个生产级别模块,展示使用 Spring Boot、Dubbo 和 Spring Cloud 构建的真实微服务架构和分布式系统设计模式。
适用人群:
- 🎓 学生和初级开发者 - 从基础到高阶全面学习 Spring Boot
- 👨💼 中级工程师 - 深入探索微服务架构和分布式解决方案
- 🏢 架构师和技术负责人 - 系统设计决策的参考实现
- 🔍 代码审查者 - 最佳实践和设计模式展示
| 特性 | 说明 |
|---|---|
| 🎯 80+ 生产级模块 | 经过验证的真实场景示例 |
| 🏗️ 微服务架构 | Dubbo、Spring Cloud 和云原生模式 |
| 🗄️ 多数据库支持 | MyBatis、JPA、MongoDB、HBase 集成 |
| 📨 消息队列集成 | RabbitMQ、Kafka、RocketMQ、ActiveMQ 示例 |
| 🔐 企业级安全 | OAuth2、JWT、Shiro、CAS 认证流程 |
| ☁️ 云原生就绪 | Docker、Kubernetes(K8s/K3s/K3d) 容器编排 |
| ⚡ 性能优化 | 缓存、异步处理、连接池(Druid) |
| 🔍 监控可观测性 | Actuator、健康检查、指标、线程监控 |
| 🛠️ 开发工具 | Swagger、Lombok、Maven 插件、代码生成 |
| 📦 多环境部署 | Profiles、assembly 打包、多环境配置 |
- Java 8+
- Maven 3.6+
- Git
# 克隆仓库
git clone https://github.com/vector4wang/spring-boot-quick.git
cd spring-boot-quick
# 构建整个项目
mvn clean install -U
# 构建特定模块
cd quick-swagger
mvn clean install
# 运行示例
mvn spring-boot:run# 运行 Swagger API 文档服务
cd quick-swagger
mvn spring-boot:run
# 访问: http://localhost:8080/swagger-ui.html
# 运行 MyBatis + Druid 演示
cd quick-mybatis-druid
mvn spring-boot:run
# 健康检查: http://localhost:8080/health
# 运行 JWT 认证示例
cd quick-jwt
mvn spring-boot:runspring-boot-quick/
├── quick-platform/ # 基础平台和依赖管理
├──
├── 📦 数据库层
│ ├── quick-mybatis-druid/ # MyBatis + Druid 连接池
│ ├── quick-jpa/ # Spring Data JPA
│ ├── quick-multi-data/ # 多数据源配置
│ ├── quick-mongodb/ # MongoDB 集成
│ └── quick-hbase/ # HBase 大数据
│
├── 📨 消息队列与事件流
│ ├── quick-rabbitmq/ # RabbitMQ 延迟队列
│ ├── quick-kafka/ # Apache Kafka
│ ├── quick-activemq/ # Apache ActiveMQ
│ ├── quick-rocketmq/ # 阿里 RocketMQ
│ └── quick-sse/ # 服务器推送事件
│
├── 🔐 安全认证
│ ├── quick-oauth2/ # OAuth2 授权服务器
│ ├── quick-jwt/ # JWT 令牌认证
│ ├── quick-shiro/ # Apache Shiro 框架
│ └── quick-shiro-cas/ # Shiro + CAS 单点登录
│
├── 🌐 Web 和 API 网关
│ ├── quick-swagger/ # OpenAPI/Swagger 文档
│ ├── quick-rest-template/ # HTTP 客户端抽象
│ ├── quick-feign/ # 声明式 HTTP 客户端
│ └── quick-graphql/ # GraphQL 查询语言
│
├── 💾 缓存与会话
│ ├── quick-redis/ # Redis 分布式缓存
│ └── quick-cache/ # Spring Cache 抽象
│
├── 🏗️ 微服务与分布式
│ ├── quick-dubbo/ # Dubbo RPC 框架
│ ├── quick-dubbo-nacos/ # Dubbo + Nacos 服务注册
│ ├── quick-zookeeper/ # Zookeeper 协调服务
│ └── quick-saturn/ # 分布式任务调度
│
├── 🛠️ 基础设施与运维
│ ├── quick-container/ # Docker 容器化
│ ├── quick-package-assembly/ # Maven Assembly 打包
│ ├── quick-config-encrypt/ # 配置加密
│ └── quick-starter/ # 自定义 Spring Boot Starter
│
└── 📚 工具库
├── quick-exception/ # 全局异常处理
├── quick-log/ # Log4j 配置
├── quick-async/ # 异步处理和线程池
├── quick-batch/ # Spring Batch 批处理
└── quick-vw-crawler/ # 网页爬虫框架
| 层级 | 技术 | 版本 |
|---|---|---|
| 框架 | Spring Boot | 2.3.4.RELEASE |
| 云平台 | Spring Cloud Alibaba | 2.2.5.RELEASE |
| RPC | Apache Dubbo | 2.7.11 |
| ORM | MyBatis、JPA | 3.5.6、latest |
| 消息队列 | RabbitMQ、Kafka、RocketMQ | - |
| 缓存 | Redis | - |
| 安全 | Shiro、OAuth2、JWT | 1.9.1 |
| 数据库 | Druid、MySQL、MongoDB、HBase | - |
| 容器 | Docker、Kubernetes | latest |
| 工具 | Swagger/OpenAPI、Lombok、Maven | 2.7+ |
- 🗄️ 数据库: MyBatis、JPA、JDBC、MongoDB、HBase
- 📨 消息队列: RabbitMQ、Kafka、RocketMQ、ActiveMQ
- 🔐 安全: OAuth2、JWT、Shiro、CAS
- 🌐 API: REST、GraphQL、OpenAPI/Swagger
- 💾 缓存: Redis、Spring Cache
- 🏗️ 微服务: Dubbo、Spring Cloud、Nacos
- ☁️ 云计算: Docker、Kubernetes、K3s
- 🛠️ 运维: CI/CD、配置管理、监控
代码质量
- ✅ 清晰架构模式
- ✅ SOLID 原则演示
- ✅ 异常处理最佳实践
- ✅ 日志标准规范
性能优化
- ✅ 连接池管理 (Druid)
- ✅ 缓存策略
- ✅ 异步处理模式
- ✅ 数据库查询优化
安全防护
- ✅ 认证和授权流程
- ✅ 数据加密 (MyBatis 加密插件)
- ✅ 配置加密
- ✅ 安全 API 设计
可扩展性
- ✅ 多数据源架构
- ✅ 分布式缓存
- ✅ 消息队列模式
- ✅ 微服务拆分
Q: 这个项目还在维护吗?
A: 是的!虽然作者目前主要使用 Go,但本学习库作为 Spring Boot 综合参考资源持续维护。
Q: 可以用于生产环境吗?
A: 这些是学习示例。生产环境需要根据需求进行安全加固、性能调优和功能扩展。
Q: 应该使用哪个版本?
A: 推荐使用 (最新-1 或 -2) 版本以获得稳定性。最新版本可能存在未知问题。
Q: 如何贡献代码?
A: Fork → 创建分支 → 提交 → Push → 提交 PR。确保代码能正常编译运行。
Q: 有中文文档吗?
A: 有的,本 README 包含完整中文内容。
欢迎贡献!请按以下步骤操作:
- Fork 本仓库
- 创建 特性分支 (
git checkout -b feature/amazing-feature) - 提交 更改 (
git commit -m 'Add amazing feature') - 推送 到分支 (
git push origin feature/amazing-feature) - 提交 Pull Request
贡献指南:
- 确保代码能编译:
mvn clean install - 遵循现有代码风格
- 为新模块添加文档
- 如添加重要功能请更新 README
- 充分测试你的改动
- ⭐ GitHub 2700+ Stars
- 🍴 927 个 Forks
- 📦 80+ 模块 覆盖所有企业级模式
- 🎓 9+ 年 持续开发和改进
- 爬虫框架 - 网页爬虫工具包
- Spark 处理 - 大数据示例
- Elasticsearch 指南 - 搜索和分析