- @Tag
属性 | 描述 |
---|
name | 表示标签的名称,必填属性,也得注意多个Controller上的name不要写一样的,这样就会把它们归类在一起。 |
description | 表示标签的描述信息,非必填属性。 |
externalDocs | 用于指定URL地址文档信息来追加描述接口的信息。非必填属性。 |
- @Operation
属性 | 描述 |
---|
summary | 用于简要描述API操作的概要。 |
description | 用于详细描述API操作的描述信息。 |
parameters | 用于指定API操作的参数列表,包括路径参数、请求参数、请求头部等。可以使用@Parameter注解进一步定义参数。 |
operationId | 用于指定API操作的唯一标识符,可以用于生成客户端代码或文档等。 |
requestBody | 用于定义API操作的请求体,可以使用@RequestBody注解进一步定义请求体。 |
responses | 用于定义 API 操作的响应列表,包括成功响应和错误响应。可以使用@ApiResponse注解进一步定义响应。 |
security | 用于对API操作进行安全控制,可以使用@SecurityRequirement注解进一步定义安全需求。(后面说) |
deprecated | 表示该API操作已经过时或不推荐使用。 |
- @Parameter
属性 | 描述 |
---|
name | 参数名称。 |
in | 参数位置,可以是 query、header、path、cookie 等。 |
description | 参数描述。 |
required | 参数是否必须,默认为 false。 |
deprecated | 参数是否已过时,默认为 false。 |
allowEmptyValue | 是否允许空值,默认为false。 |
style | 参数的序列化风格,可以是 “matrix”、“label”、“form”、“simple”、“spaceDelimited”、“pipeDelimited”、“deepObject”; |
explode | 当参数值是对象或数组时,是否将其展开成多个参数,默认为false。 |
schema | 参数类型和格式的定义,通常使用@Schema注解。 |
example | 参数值的示例。 |
- @Schema
属性 | 描述 |
---|
description | 用于描述该类或属性的作用。 |
name | 指定属性名。该属性只对属性有效,对类无效。 |
title | 用于显示在生成的文档中的标题。 |
requiredMode | 用于指定该属性是否必填项。枚举Schema.RequiredMode内可选值如下:默认AUTO:可有可无;REQUIRED:必须存在此字段(会加红色*);NOT_REQUIRED:不需要存在此字段 |
accessMode | 用于指定该属性的访问方式。包括AccessMode.READ_ONLY(只读)、AccessMode.WRITE_ONLY(只写)、AccessMode.READ_WRITE(读写) |
format | 用于指定该属性的数据格式。例如:日期格式、时间格式、数字格式。 |
example | 为当前的属性创建一个示例的值,后期测试可以使用此值。 |
deprecated | 用于指定该属性是否为已过时的属性,默认为false。 |
defaultValue | 用于指定该属性的默认值。 |
implementation | 用于显示为该类或属性引入具体的实体路径,这代表当前指定的类或者属性将参考引入的实体。就是说有个实体类,这个类里面有个teacher属性,这时里面的teacher属性可以指定具体的实体类。 |
参考文章:SpringBoot集成Swagger3.0(详细)