Knif4j

作用

但有了 Swagger、Knife4j 后,可以通过简单的配置生成接口的展示页面,把接口的请求参数、返回结果通过可视化的形式展示出来,并且提供便捷的测试服务。访问地址是在后面加上doc.html。

http://127.0.0.1:8080/doc.html#/home

导包

不需要再引入 Swagger 了,因为这个库里面包含了。

<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
<version>slknife4i.versionl</version>
</dependency>

需要在 yml 文件里面进行配置

  1. group-name: 分组名称。
  2. api-rule:分组规则,这里使用的是包规则
  3. api-rule-resources:指定包名,Knife4j将扫描此包下的所有APl接口并将它们添加到此分组

注解

  1. @ApiOperation:用于描述一个具体的 API 操作。通常用于标注在 Controller 类的方法上。它有以下三个主要属性:
  • value:API 操作的简短描述,会显示在 API 文档中。
  • notes:API 操作的详细描述,会显示在 API 文档中。
  • tags:API 操作的标签,用于对 API 进行分类和分组。
  1. @ApiParam:用于描述 API 操作的参数。通常用于标注在 Controller 类的方法参数上。它有以下主要属性:
  • name:参数名称。
  • value:参数描述。
  • required:指示参数是否是必需的,默认为 false。
  • defaultValue:参数的默认值。
  • allowableValues:允许的参数值范围。
  1. @ApiModel:用于描述一个 API 操作返回的数据模型或请求数据模型。通常用于标注在实体类或 DTO 类上。它有以下主要属性:
  • value:模型名称。
  • description: 模型描述。