目录
初始化流程
详细注解分析
@Api
@ApiOperation
@ApiModelProperty
@ApiImplicitParam
@ApiImplicitParams
@ApiIgnore
初始化流程
1:pom文件引入相关依赖
<!--api接口文档生成-->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
<version>4.0.0</version>
</dependency>
2:创建配置类
package com.example.springboot_demo.config;
/**
*
*/
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
@Configuration
@EnableSwagger2WebMvc
public class Knife4jConfig {
//配置Swagger2的Docket的Bean实例
@Bean public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
// apiInfo():配置 API 的一些基本信息,比如:文档标题title,文档描述 description,文档版本号version
.apiInfo(apiInfo())
// select():生成 API 文档的选择器,用于指定要生成哪些 API 文档
.select()
// apis():指定要生成哪个包下的 API 文档
.apis(RequestHandlerSelectors.basePackage("com.example.springboot_demo.controller"))
// paths():指定要生成哪个 URL 匹配模式下的 API 文档。这里使用 PathSelectors.any(),表示生成所有的 API 文档。
.paths(PathSelectors.any()) .build();
}
//文档信息配置
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
// 文档标题 .title("微博项目") // 文档描述信息
.description("微博项目在线API文档")
// 文档版本号 .version("1.0")
.build(); }
}
3:默认访问域名+端口+doc.html
详细注解分析
@Api
类上
tags:配置模块的名称
@ApiOperation
方法上
value:配置业务名称
@ApiModelProperty
bean类属性上 属性名参数说明
value:参数中文名称
required:参数是否必填
example:配置示例值
@ApiImplicitParam
方法上
name:指定参数名称
value:配置参数名称
dataType:配置数据类型
required:是否必填true/false
example:示例值
@ApiImplicitParams
value:参数值 示例:
{
@ApiImplicitParam(name = "id", value = "微博", required=true,
dataType = "int"),
@ApiImplicitParam(name = "username", value = "用户名", required=true)
}
@ApiIgnore
添加在处理请求的方法的参数上,用于表示API文档框架应该忽略此参数文章来源:https://www.toymoban.com/news/detail-452058.html
@ApiOperationSupport
order:排序编号文章来源地址https://www.toymoban.com/news/detail-452058.html
到了这里,关于knife4j API文档生成使用流程及详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!