# yiyi-boot **Repository Path**: zxjbyte/yiyi-boot ## Basic Information - **Project Name**: yiyi-boot - **Description**: ☕yiyi-boot是一套纯净的脚手架,适用于进行二次开发,只需10秒就可复刻出新结构项目,基于稳定版本,jdk1.8 + springboot2.7.8 + mybatis-plus + redis + mysql8.0.28,支持SaaS多租户,okhttp3封装,easyexcel封装,pdf封装,基于redis分布式锁,xss防护等,持续更新中... 您的Star⭐⭐是作者的最大动力。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: https://gitee.com/zxjbyte/yiyi-boot - **GVP Project**: No ## Statistics - **Stars**: 44 - **Forks**: 1 - **Created**: 2023-04-12 - **Last Updated**: 2025-09-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

logo

YiYi-Boot:高扩展性企业级开发框架

yiyi-boot v1.6.5 SpringBoot v2.7.18 JDK1.8+ license MIT

### 📚 项目介绍 🚀 YiYi-Boot 是一款高扩展性、高可配置的企业级开发框架,专为现代化业务系统打造。项目采用 Spring Boot 2.7.18,集成 MyBatis-Plus、Redis、MySQL 8.0.28,并提供 SaaS 多租户、分布式锁、XSS 防护、OSS 存储、多线程任务调度(Quartz)、即时通讯(WebSocket & SSE) 等一系列企业级功能,助力开发者快速构建稳定、高效的应用。 🛠 框架采用模块化架构,核心分为 API 层、Extension 扩展组件层、技术组件层(Framework)、业务模块(Module),所有模块清晰分工,支持灵活扩展。内置 代码生成器、日志监控、站内信、租户管理、高性能缓存 等功能,开箱即用。 💡 YiYi 之名源于作者女儿的小名“依依”,寓意温暖而坚定,正如本框架致力于提供 可靠、优雅、便捷 的开发体验,助力企业级应用稳定成长。 ### 🔊 **开源声明** 1️⃣ 本项目采用 **[MIT License](https://gitee.com/zxjbyte/yiyi-boot/blob/master/LICENSE)** 开源协议,**个人与企业均可免费使用**,无需保留作者信息或版权声明。 2️⃣ 代码**完全开源**,现在及未来**不会推出商业版**,也**不会收取任何费用**(包括代码授权、文档付费等)。 3️⃣ **代码规范、结构清晰**,遵循《阿里巴巴 Java 开发手册》,核心逻辑均有详细注释,便于阅读和维护。如有问题,欢迎 **Issues**、**Fork** 共同优化。 4️⃣ 🌟 **开源不易,您的 ⭐Star 是我最大的动力!** 如果觉得项目不错,欢迎点赞支持!😋 ### 🛠️ 核心框架 | 框架 | 说明 | 版本 | |---------------------------------------------------------------------------------------------|-----------------------|-------------| | [Spring Boot](https://spring.io/projects/spring-boot) | 应用开发框架 | 2.7.18 | | [MySQL](https://www.mysql.com/cn/) | 数据库服务器 | 5.7 / 8.0+ | | [MyBatis Plus](https://mp.baomidou.com/) | MyBatis 增强工具包 | 3.5.3.1 | | [Dynamic Datasource](https://dynamic-datasource.com/) | 动态数据源 | 3.6.1 | | [Redis](https://redis.io/) | 开源内存数据存储 | 5.0 / 6.0 | | [Redisson](https://github.com/redisson/redisson) | Redis 客户端 | 3.18.0 | | [Quartz](https://github.com/quartz-scheduler/quartz) | Quartz | 2.3.2 | | [Spring MVC](https://github.com/spring-projects/spring-framework/tree/master/spring-webmvc) | MVC 框架 | 5.3.24 | | [Knife4j](https://gitee.com/xiaoym/knife4j) | Swagger生成Api文档的增强解决方案 | 4.1.0 | | [MapStruct](https://mapstruct.org/) | Java bean 映射 | 1.5.3.Final | | [Lombok](https://projectlombok.org/) | 简化java代码 | 1.18.24 | | [Easyexcel](https://easyexcel.opensource.alibaba.com/) | Excel处理工具 | 3.2.0 | | [Hutool](https://www.hutool.cn/) | 小而全的Java工具类库 | 5.8.15 | ### 🐹 项目结构 ```lua yiyi-boot └── yiyi-api -- 接口服务 └── yiyi-module-system-api -- 系统管理 API,如字典、日志、开发配置等 └── yiyi-module-upms-api -- 用户权限 API,支持组织架构、部门管理等 ├── yiyi-bootstrap -- 启动服务,统一加载各模块,管理应用生命周期 ├── yiyi-codegen -- 代码生成器,基于 MyBatis-Plus 生成 CRUD 代码 ├── yiyi-bom -- 依赖管理,维护统一 BOM 版本,确保依赖一致性 └── yiyi-extension -- 扩展模块 ├── yiyi-extension-inbox -- 站内信,支持系统通知、用户私信等 ├── yiyi-extension-job -- 任务调度,基于 Quartz 定时执行任务 ├── yiyi-extension-monitor -- 监控管理,提供服务器状态、Redis监控等 └── yiyi-extension-realtime -- 即时通讯,支持 WebSocket、SSE 实时消息推送 └── yiyi-framework -- 技术组件模块 ├── yiyi-common -- 公共定义,提供基础工具类、常量、异常处理等 ├── yiyi-starter-banner -- Banner 组件,自定义启动标识 ├── yiyi-starter-biz-log -- 业务日志,支持日志存储、审计日志等 ├── yiyi-starter-biz-tenant -- 多租户支持,提供 SaaS 租户隔离能力 ├── yiyi-starter-cdc -- cdc组件 (待实现) ├── yiyi-starter-mybatis -- MyBatis 增强封装,简化数据库操作 ├── yiyi-starter-oss -- OSS 组件,支持多种存储方式(阿里云、腾讯云等) ├── yiyi-starter-redis -- Redis 封装,提供缓存、分布式锁、Pub/Sub等能力 └── yiyi-starter-web -- Web 组件,封装 XSS 防护、跨域、异常处理等 └── yiyi-module -- 业务核心模块 └── yiyi-module-system -- 系统服务,管理字典、日志、开发等 └── yiyi-module-upms -- UPMS 业务,支持组织架构、身份认证等 └── yiyi-server-biz -- 业务开发模块,支持自定义业务扩展 ``` ### 🚀 项目启动
▶️IDEA启动项目 1. 执行mysql脚本 script/mysql/yiyi_boot_mysql_innodb.sql 2. 修改项目配置(mysql,redis) 在yiyi-bootstrap模块下 找到resources资源目录下,yiyi-default.propertites修改对应环境配置。 3. 启动服务 在yiyi-bootstrap模块下 找到com.zxjbyte.yiyi.server.YiyiBootstrap.java类, 运行main方法启动。 ### 📋 使用必读
🎃项目魔改支持 - 当您准备使用yiyi-boot进行二次开发时,可使用一键魔改,只需10秒就可以复刻出一套 完全符合您个人或者企业结构的项目,使用方式如下: - 在yiyi-application模块下,找到com.zxjbyte.yiyi.server.modifier.ProjectModifier.java类 修改需要配置的参数(代码中有详细注释使用说明),修改完毕运行main方法。 ### 🐨 开源推荐 1. 【芋道源码】 [https://gitee.com/zhijiantianya/ruoyi-vue-pro](https://gitee.com/zhijiantianya/ruoyi-vue-pro) 2. 【blade-tool】 [https://gitee.com/smallc/blade-tool](https://gitee.com/smallc/blade-tool) *** ### 📧 联系作者 ``` 🥝我们也是接外包的哦! ``` :fa-paper-plane: zhangxingjia245@163.com :fa-weixin: ![微信二维码](static/wechat_qrcode.png) :fa-qq: ![QQ二维码](static/qq_qrcode.png)