Skip to content

Commit

Permalink
Update documents
Browse files Browse the repository at this point in the history
  • Loading branch information
lkqm committed Aug 26, 2021
1 parent d017fa6 commit 6d285b2
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 61 deletions.
73 changes: 15 additions & 58 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,87 +1,44 @@
# Yapi X
一键生成接口文档, 上传到yapi, rap2, eolinker等.
一键生成接口文档, 上传到Yapi, Rap2, Eolinker等.

- [x] 一键从源代码生成api文档
- [x] 支持外部配置文件
- [x] 上传到Yapi平台
- [x] 上传到Rap2平台
- [x] 上传到Eolinker平台
- [ ] 生成markdown接口文档

<img src="screenshots.gif" height="360">

原理:这是一个Idea插件,从源码解析标准Javadoc文档, 并结合spring等常见注解.

## 轮子
我一直在使用[YapiUpload](https://github.com/diwand/YapiIdeaUploadPlugin) 插件生成文档非常方便,
在这之前一直维护公司分支版本,鉴于该开源项目维护缓慢,并在功能设计上与个人理念存在差异,因此决定重写该项目。
一直在使用[YapiUpload](https://github.com/diwand/YapiIdeaUploadPlugin) 插件生成文档非常方便,
鉴于该项目维护缓慢,并在功能设计上与个人理念存在差异,因此决定重写该项目。

- 支持任意泛型
- 支持任意泛型、批量上传
- 支持账户密码登录
- 批量上传,多线程上传
- 几乎兼容YapiUpload规则
- 代码逻辑简单,易于二次开发
- ...

## 使用
1. 安装插件: 打开Idea -> File -> Settings -> Plugins, 搜索: `Yapi X`
2. 项目配置: 项目根目录创建`.yapix`文件, 内容: `projectId=110`
3. 执行上传: 选中你的控制类或方法,右键执行: `Upload To Yapi`
1. 安装: 打开Idea -> File -> Settings -> Plugins, 搜索: `Yapi X`
2. 配置: 项目根目录创建`.yapix`文件, 内容: `yapiProjectId=110`
3. 上传: 选中你的控制类或方法,右键执行: `Upload To Yapi`

## 配置文件(.yapix)
## 配置
```properties
# 项目id
yapiProjectId=
rap2ProjectId=
eolinkerProjectId=
# 包装类全称: String
# 包装类全称: 场景是有配置spring全局过滤器包装统一返回值的情况
returnWrapType=
# 解包装类型全称: List<String>
# 解包装类型全称: 场景是有些返回类型不希望被统一spring过滤器包装
returnUnwrapTypes=
# 参数忽略类型全称: List<String>
# 参数忽略类型全称: 场景是自定义注入了一些参数类型不是由客户端上传
parameterIgnoreTypes=
```
备注: 对于list类型值支持英文逗号分隔,并允许空格.

## 规则
大多数情况下只需要使用标准的Javadoc就能非常完美的生成文档.
1. 标准的Javadoc生成
接口: GET /user/list
分类: 用户管理
接口: 获取用户列表
参数: @param注解, 参数实体中解析字段注释
```java
/**
* 用户管理
*/
@RestController
@RequestMapping("/user")
public class UserController {

/**
* 获取用户列表
*
* @param page 页码
* @param size 每页大小
*/
@GetMapping("/list")
public User list(Integer page, Integer size) {}

/**
* 新增用户
*/
@PostMapping("/add")
public User add(@RequestBody UserAddRequest request) {}
}
```
2. 验证框架注解
```
@NotNull
@NotEmpty
@NotBlank
```
3. 其他spring注解
```
@RequestParam
@RequestHeader
@PathVariable
@RequestAttribute
```
## 贡献
欢迎提交需求,发现问题,提交代码来参与贡献。
5 changes: 2 additions & 3 deletions src/main/resources/META-INF/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,8 @@
<li>Upload to YAPI platform.</li>
<li>Upload to RAP2 platform.</li>
<li>Upload to Eolinker platform.</li>
<li>Generate to markdown document.</li>
</ul>
<img src="https://raw.githubusercontent.com/jetplugins/yapix/main/screenshots.gif" >
<img src="https://raw.githubusercontent.com/jetplugins/yapix/main/screenshots.gif" height="360">
]]></description>

<!-- please see http://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/build_number_ranges.html for description -->
Expand Down Expand Up @@ -58,7 +57,7 @@
</actions>

<change-notes><![CDATA[
<p>0.0.1</p>
<p>0.0.2</p>
<ul>
<li>1.Generate API documents from Java source code.</li>
<li>2.Upload to YAPI platform.</li>
Expand Down
Binary file modified yapix.jar
Binary file not shown.

0 comments on commit 6d285b2

Please sign in to comment.