无需额外注解的 SpringBoot API文档生成工具

简介

编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后端代码都是自己写的,否则API文档将是前后端协作中一个不可或缺的沟通界面。

JApiDocs是一个无需额外注解、开箱即用的SpringBoot接口文档生成工具。

无图无真相,生成文档的效果如下:

JApiDocs

相比Swagger要写一堆注解,Spring Rest Docs需要写测试用例,才能生成API文档,JApiDocs 具有无痛集成的特点。

快速开始

要使得JApiDcos正确工作,你写的代码应该是像下面的样子的:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
* 用户接口
*/
@RequestMapping("/api/user/")
@RestController
public class UserController {
/**
* 用户列表
* @param listForm
*/
@RequestMapping(path = "list", method = {RequestMethod.GET, RequestMethod.POST} )
public ApiResult<PageResult<UserVO>> list(UserListForm listForm){
return null;
}

/**
* 保存用户
* @param userForm
*/
@PostMapping(path = "save")
public ApiResult<UserVO> saveUser(@RequestBody UserForm userForm){
return null;
}
}

我们给Controller类和方法加上必要的注释,给接口方法返回相关的对象类型。是的,这样JApiDocs就能解析到相关的接口信息了,就跟我们平时写的代码是差不多的,但要注意,你要通过@param来告诉JApiDocs接口的参数,但在IDE的帮助下,这个工作将是轻松愉悦的:

upload successful

然后你在任意一个main入口方法执行下面的代码就可以生成文档了:

1
2
3
4
5
6
7
8
DocsConfig config = new DocsConfig();
config.setProjectPath("your springboot project path"); // 项目根目录
config.setProjectName("ProjectName"); // 项目名称
config.setApiVersion("V1.0"); // 声明该API的版本
config.setDocsPath("your api docs path"); // 生成API 文档所在目录
config.setAutoGenerate(Boolean.TRUE); // 配置自动生成
Docs.buildHtmlDocs(config); // 执行生成文档

仓库地址

github仓库


无需额外注解的 SpringBoot API文档生成工具
http://ysocket.pages.dev/2023/07/31/JApiDocs/
作者
YSocket
发布于
2023731
许可协议