doc-apis doc-apis
💋首页
  • v1.0.0(当前版本)
  • What's New

    • What' s New In doc-apis v1.0.0 ?
💖收费
  • 开源社区
  • 项目PPT (opens new window)
  • 项目介绍
  • 项目成员
  • 参与贡献
  • 加入社区讨论
  • 谁在使用
  • Easy-Es (opens new window)
  • 健身计划一键生成系统 (opens new window)
  • Gitee (opens new window)
  • Github (opens new window)
  • 简体中文 (opens new window)
  • English (opens new window)

广告采用随机轮播方式显示 ❤️成为赞助商
💋首页
  • v1.0.0(当前版本)
  • What's New

    • What' s New In doc-apis v1.0.0 ?
💖收费
  • 开源社区
  • 项目PPT (opens new window)
  • 项目介绍
  • 项目成员
  • 参与贡献
  • 加入社区讨论
  • 谁在使用
  • Easy-Es (opens new window)
  • 健身计划一键生成系统 (opens new window)
  • Gitee (opens new window)
  • Github (opens new window)
  • 简体中文 (opens new window)
  • English (opens new window)
  • 快速入门

    • 简介
    • 适用场景
    • 顾虑粉碎
    • 快速开始
    • 其它项目
    • 配置
    • 注解
      • @DocApi
      • @DocIgnore
        • 忽略指定Controller
        • 忽略指定方法
        • 忽略指定字段
  • 拓展功能

    • 接口调试
  • 其它

    • 问答
    • 更新日志
    • 更新计划
    • 版权
    • 鸣谢
  • v1.x文档
  • 快速入门
老汉
2023-03-18
目录

注解

# @DocApi

doc-apis默认生成当前项目内所有符合框架内置规则的接口(规则包含加了@RestController注解,@Controller注解等多种特征符合其一即可),如果您不希望把所有的接口都生成接口文档, 可以通过前面配置章节提到的doc-apis.autoGenerate=false 来取消这个默认规则, 取消后,您可以通过@DocApi来指定哪些接口需要生成接口文档.

当@DocApi声明在接口方法上的时候,它还拥有一些更灵活的设置:

  • result: 这个可以直接声明返回的对象类型,如果你声明了,将会覆盖SpringBoot的返回对象
  • stringResult: 返回字符串,在返回结果比较简单,而不想创建一个专门的返回类,则可以考虑使用这个属性
  • url: 请求URL,扩展字段,用于支持非SpringBoot项目
  • method: 请求方法,扩展字段,用于支持非SpringBoot项目

示例:

@DocApi(result = AdminVO.class, url = "/api/v1/admin/auth", method = "post") stringResult 实例,在文档中将会自动格式化json字符串:

@DocApi(stringResult = "{code: 200, data: 'success'}") @GetMapping(value = "custom-json") public Map customJsonResult(){}

# @DocIgnore

# 忽略指定Controller

忽略某个Controller,你只需要在该Controller类上添加该注解即可,这样整个Controller内的所有接口都会被忽略掉: DocIgnore public class UserController { }

# 忽略指定方法

当然您也可以把该注解加在具体的方法上,仅忽略该Controller中的的该指定方法,以达到更细粒度的控制:

@DocIgnore
@PostMapping("save")
public ApiResult saveUser(){
return null;
}
1
2
3
4
5

# 忽略指定字段

如果你不想导出对象里面的某个字段,可以给这个字段加上@DocIgnore注解,如此即可在生成接口文档时忽略该字段:

public class User{
   // 省略其它无关字段... 
  
   /**
    * 姓名
    */
   @DocIgnore
   private String name;
}
1
2
3
4
5
6
7
8
9

特别注意

1.框架默认采用Controller类上面的注释内容作为文档的导航标题,但当注释内容中出现@description时,则使用description作为导航标题,例如:

/**
 * 演示一些比较特殊的声明方法
 *
 * @description 管理员接口
 */
@Controller
public class AdminController {
}
1
2
3
4
5
6
7
8

则接口文档生成后,导航标题为: 管理员接口, 而非演示一些比较特殊的声明方法

2.在方法的注释中加上@description,则可以在接口方法下面添加一行说明,例如:

 /**
  * 用户列表
  * @description 前端同学请注意, 一切责任,全在前端
  */
  @PostMapping("/list")
  public ApiResult<List<User>> listUser(){}
1
2
3
4
5
6

则接口文档生成后,接口方法下面会多出一行追加的说明: 前端同学请注意, 一切责任,全在前端

帮助我们改善此文档 (opens new window)
上次更新: 2024/07/12
配置
接口调试

← 配置 接口调试→

Theme by Vdoing | Copyright © 2024-2024 老汉 | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式