# r2mo-rapid
**Repository Path**: xchen02/r2mo-rapid
## Basic Information
- **Project Name**: r2mo-rapid
- **Description**: R2MO = R² Meta-Orchestrated / for Rachel Momo
Rapid Development
- **Primary Language**: Java
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 4
- **Created**: 2025-11-16
- **Last Updated**: 2025-11-16
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 核心开发库
[](https://mvnrepository.com/artifact/io.zerows/rachel-momo) [](https://mvnrepository.com/artifact/io.zerows/r2mo-rapid)
> For Rachel Momo
## 介绍
此库用于统一 `spring-cloud / spring-boot` 提供相对标准化的无业务脚手架,可快速开发和实施相关项目。
### 基础功能
- 统一的 Json 数据结构类型
- [x] Hutool 中的 `JSONObject/JSONArray`
- [x] Vertx 中的 `JsonObject/JsonArray`
- 统一的 Io 存储对接访问(存储抽象隔离)
- [x] 本地文件系统
- [ ] 🧪 FTP / SFTP
- 统一的异常处理架构
- [x] Web 异常
- [x] Remote 服务通信异常(Dubbo专用)
- [x] Secure 安全异常(Security专用)
- [x] 异常国际化支持 `ResourceBundle`
- [x] 🌟 `VertxE / SpringE` 异常定义 -> 统一管理带有错误码的异常处理
- 统一的抽象数据层
- [x] 标准化的 `CRUD` 管理接口(具有幂等性的代码生成模型)
- [x] 🌟 JSON 语法的数据库查询分析引擎,简化查询,动态构造。
- [x] Mybatis Plus
- [ ] 🧪 Jooq 实现
- 快速编程 🌟
- [x] 核心组件
- `Cc` Core Cache / 组件缓存架构:防止组件的重复创建
- `Fn` 函数式编程接口,兼容 lambda 处理 `Checked` 异常
- `R / WebRequest / WebResponse` 统一请求响应格式处理
- `ActResponse` 统一服务级响应处理
- `BuilderOf` 多元格式转换器,替换传统的 `Set/Get` 方法
- [x] 核心工具
- `DBE` / Database Engine,提供数据库统一访问
- `HFS` / High-Level File System,存储设备统一方法
- `RFS` / Remote File System,基于底层抽象存储的上传下载
- `HED` / High-Level Encrypt Decrypt,加解密专用工具类
- `SPI` / Service Provider Interface,基于 SPI 的核心扩展,可直接使用
- 快速测试框架
- [x] JUnit 5
- [x] Mockito
- 基于 Bouncy Castle 的增强安全算法 / 国密算法 🌟
- [x] 许可管理全流程
- [x] 数字签名
- [x] 常用加密、解密核心算法统一接口
- [x] 大文件上传下载
- 双容器模型
- [x] Spring Boot 容器(包含 Security部分插件式引入)
- [x] Vert.x 容器
> 部分实现模型只能二选一!
---
## 参考文档
### 工程初始化
最新版:
```bash
# 安装自动化工具
npm install -g zero-ai
# 初始化 Spring 项目脚手架
ai spring -n app-demo
# 初始化 Zero 项目脚手架(开发中)
ai app -n app-zero
```
### 使用方式
搭建经典的 `-domain/-provider/-api` 的结构,在父 POM 项目中直接继承(推荐)
```xml
io.zerows
r2mo-rapid
${r2mo.version}
```
只有使用继承的方式可保证 Maven 的插件版本管理,若插件版本想自定义,直接追加 Maven 的依赖即可。
子项目 `-domain` 中引入
```xml
io.zerows
r2mo-spring-boot
${r2mo.version}
io.zerows
r2mo-spring-mybatisplus
${r2mo.version}
io.zerows
r2mo-spring-json
${r2mo.version}
io.zerows
r2mo-typed-hutool
${r2mo.version}
io.zerows
r2mo-io-local
${r2mo.version}
```
上述方式是**自选择实现**的模式,若想要快速启动可使用如下依赖:
```xml
io.zerows
r2mo-boot-spring-default
${r2mo.version}
```
---
### 引导文档
> Spring 部分
- [1.快速开始](docs/01-Environment.md)
- [2.Domain/Entity 书写](docs/02-Domain.md)
- [3.MyBatis-Plus / 代码生成](docs/03-Generator.md)
- [4.异常定义](docs/04-Exception.md)
- [5.查询引擎 DBE](docs/05-DBE.md)
Service/Controller 部分的编程代码可直接参考生成代码,也可自己编写!
---