Swagger 一篇包含所有常用注解 让你为所欲为

目录

@Api()

@ApiOperation()

@ApiParam()

@ApiModelProperty()

@ApiModel()

@ApiImplicitParams()

@ApiImplicitParam()

@ApiResponses ()

@ApiResponse ()

@Authorization()

@AuthorizationScope()

@ResponseHeader()

@SwaggerDefinition()


@Api()

作用在类,标识为公开的操作类

tags(S [ ]):标签 也可以理解为对外展示的类名

value(S):路径,类上所使用的路由,与 tags 同时使用时 会被覆盖该值的存在

desription(S):描述此类的作用

protocols(S):协议 如:http https ws wss ...... 多协议采用 “,” 分割

position(I):api的显示顺序,int类型

hidden(B):是否隐藏,默认false true时该类将不会在swagger文档上显示

consumes(S):需要的文件的MIME类型

produces(S):本类中返回的MIME类型 如:application/json 一般情况下 我们都是用spring的注解实现

authorizations(Authorization[ ]):高级用户认证 数组模式

basePath(S):基本路径,默认为空,无需配置

   

@ApiOperation()

用在方法上,说明方法的作用,可以为每一个方法单独定义访问特性

value(S):可以是路径值,也可以当作声明使用

notes(S):笔记,也可以用作描述

tags(S[ ]):标签,如果设置这个值、value的值会被覆盖

description(S):资源的描述

basePath(S):基本路径可以不配置

position(I):改变显示的顺序位置

produces(S):本方法返回的MIME类型 如:application/json 一般情况下 我们都是用spring的注解实现

consumes(S):本方法接收的MIME类型

protocols(S):协议 如:http https ws wss ...... 多协议采用 “,” 分割

authorizations(Authorization[ ]):高级用户认证 数组模式

hidden(B):本方法是否隐藏

response(Class<?>):返回的对象

responseContainer(S):作用与集合 如 List,Set,Map.....

httpMethod(S):"GET", "HEAD","POST","PUT","DELETE", "OPTIONS" ,"PATCH"

code(I):状态码 默认 200

extensions(Extension [ ]):扩展属性

 

@ApiParam()

用作参数体

 name(S):参数名称,可以被覆盖,如果是路径绑定参数,命名则是它们代表的路径名称

value(S):参数的描述

defaultValue(S):默认值,如果参数启用该属性,未赋予值时,会采用默认值

allowableValues(S):接收参数值的限制

required(B):是否必传

access(S):参数过滤,详情参考网上众多教程

allowMultiple(B):指定参数是否可以通过多次出现来接收多个值

hidden(B):是否隐藏

example(S):参数示例,RequestBody类型的无法被修饰,针对单个参数有效

examples(E):参数示例,仅适用于请求体类型的请求

type(S):添加覆盖检测到类型的功能

format(S):添加提供自定义format格式的功能

allowEmptyValue(B):添加将格式设置为空的功能

readOnly(B):是否只读

collectionFormat(S):添加使用 array 类型覆盖 collectionFormat 的功能

@ApiModelProperty()

可作用在方法上,也可作用在字段,一般作用在字段,表示对该字段的说明与描述

 value(S):属性描述

name(S):覆盖属性的名称,或重写属性名称

allowableValues(S):限制可以接收的属性值

access(S):属性过滤

notes(S):属性笔记

dataType(S):属性的数据类型,会覆盖从本类中之前定义的类型

required(B):是否必传

position(I):属性显示顺序

hidden(B):是否隐藏

example(S):示例

readOnly(B):是否只读

reference(S):指定对应类型定义的引用,覆盖指定的任何其他元数据

allowEmptyValue(B):传值是否可以为空 f:不允许 t:允许

@ApiModel()

作用在实体类,对象参数类上,标明该实体类的作用

 value(S):实体类命名

description(S):实体类的描述

parent(C):实体类的继承关系描述

discriminatory(S):支持实体类继承和多态,使用鉴别器的字段的名称,可以断言需要使用哪个子类型

subTypes(C<?> [ ]):继承子类型数组

reference(S):指定类型的引用,覆盖任何其他元数据

@ApiImplicitParams()

作用在方法上,标明一组入参的说明 搭配 @ApiImplicitParam()使用

 value(ApiImplicitParam[]):如上

 

@ApiImplicitParam()

作用在方法上,标明一个入参的说明

value(S):参数的描述/简要说明

name(S):参数名称

defaultValue(S):参数默认值

allowableValues(S):参数的限制,限制参数的接受值,可以使用的值或者是取值范围 如 1~99

required(B):是否必传

access(S):参数过滤

allowMultiple(B):参数是否可以通过多次出现来接收多个值

dataType(S):参数的数据类型,可用类名或原始数据类型

dataTypeClass(C):参数的类,如果提供则覆盖 dataType

paramType(S):参数的参数类型,有效值为 ①:path 请求参数的获取:@PathVariable() ②:header 请求参数的获取:@RequestHeader() ③:query 请求参数的获取:@RequestParam() ④:body 请求参数的获取:@RequestBody() ⑤:form(不常用)   

example(S):参数的示例

examples(Example):参数示例,仅适用于 BodyParameters(请求体类型的)

type(S):添加覆盖检测到的类型的功能

format(S):添加提供自定义格式的功能

allowEmptyValue(B):添加将 format 设置为空的功能

readOnly(B):是否只读

collectionFormat(S):添加使用 array 类型 collectionFormat 的功能

@ApiResponses ()

作用在方法上,标明一组返回值的说明 搭配 @ApiResponse()使用

value(ApiResponse[]):ApiResponse 列表

@ApiResponse ()

作用在方法上,标明一个一个错误的响应信息

 code(I):响应的HTTP状态码

message(S):消息内容

response(C):用于描述消息有效负载的可选响应类,对应于响应消息对象的 schema 字段

reference(S):指定对响应类型的引用,指定的应用可以使本地引用,也可以是远程引用,将按原样使用,并将覆盖任何指定的response()类

responseHeaders(ResponseHeader[]):可能响应的 header 列表

 

@Authorization()

接口授权,不单独使用,作为 @Api 或 @ApiOperation 的属性使用

 value(S):要在此资源/操作上使用的授权方案名称。必须在资源列表的授权部分中定义名称

scopes(AuthorizationScope[]):授权方案为OAuth2时使用的范围

 

@AuthorizationScope()

接口授权范围使用,不单独使用,作为 @Authorization 的属性使用

value(S):要使用的 OAuth2 授权方案的范围。范围应事先在Swagger对象的securityDefinition部分中声明

description(S):在1.5.X中使用,保留用于旧版本的支持

 

@ResponseHeader()

作为 @ApiResponse 的属性,作为返回数据的一部分,指定返回 header 信息

 name(S):header的名称

description(S):response header 详细描述

response(C):类型

responseContainer(S):声明包装响应的容器,有效值为List或Set,任何其他值都将被覆盖

 

@SwaggerDefinition()

定义 metadata level 时使用,在 Rest 接口或类上使用

host(S):要在生成的Swagger定义中指定的主机

basePath(S):指定生成的Swagger文档定义basePath

consumes(S [ ]):

produces(S [ ]):

schemes(Scheme[ ]):传输协议

tags(Tag[ ]):标记单个Apis和ApiOperations的全局标记

securityDefinition(SecurityDefinition):安全方案的定义

info(Info):为swagger定义常规元数据

externalDocs(ExternalDocs):外部文档

猜你喜欢

转载自blog.csdn.net/SouvenirYMW/article/details/107768939
今日推荐