本文介绍 Spring Boot 2 集成 SpringFox Swagger2 生成 API 文档的方法。
目录
SpringFox Swagger2 简介
常用注解
@Api
@ApiModel
@ApiModelProperty
@ApiOperation
@ApiParam
@ApiImplicitParam
@ApiImplicitParams
@ApiResponse
@ApiResponses
@ResponseHeader
开发环境
基础示例
总结
SpringFox Swagger2 简介
SpringFox 用于在 Spring 应用中自动化构建 API 文档。
Swagger2 是一款功能强大的 API 构建工具。
常用注解
@Api
修饰类,说明该类的用途,与 @Controller 注解一起使用。
注解属性说明:
value:URL 路径。
tags:如果设置则会覆盖 value 的值。
description:对 API 资源的描述。
basePath:基本路径,可以不配置。
position:如果配置了多个 API,可以据此修改显示的顺序和位置。
produces:application/json、application/xml 等。
consumes:application/json、application/xml 等。
protocols:http、https、ws、wss 等。
authorizations:高级特性认证时配置。
hidden:如果配置为 true 则在文档中会隐藏。
@ApiModel
修饰模型类,一般用于使用 @RequestBody 传参的场景,因为这类请求参数无法使用 @ApiImplicitParam 注解进行描述。
@ApiModelProperty
修饰模型类的属性。
@ApiOperation
修饰 Controller 中的方法,定义每一个 URL 资源,描述针对特定路径的操作,通常是 HTTP 方法。
注解属性说明:
value:URL 路径。
tags:如果设置则会覆盖 value 的值。
description:对 API 资源的描述。
basePath:基本路径,可以不配置。
position:如果配置了多个 API,可以据此修改显示的顺序和位置。
produces:application/json、application/xml 等。
consumes:application/json、application/xml 等。
protocols:http、https、ws、wss 等。
authorizations:高级特性认证时配置。
hidden:如果配置为 true 则在文档中会隐藏。
response:返回的对象。
responseContainer:返回对象的容器,仅对 List、Set、Map、Array 有效。
httpMethod:GET、HEAD、POST、PUT、DELETE、OPTIONS、PATCH。
code:HTTP 状态码,默认为 200。
extensions:扩展属性。
@ApiParam
修饰 Controller 中方法的属性,为参数添加额外元数据,此注解只能与 JAX-RS 1.x / 2.x 注解组合使用。
注解属性说明:
name:属性名称。
value:属性值。
<