常用注解

  • @Api()用于类;

    表示标识这个类是swagger的资源

  • @ApiOperation()用于方法;

    表示一个http请求的操作

  • @ApiParam()用于方法,参数,字段说明;

    表示对参数的添加元数据(说明或是否必填等)

  • @ApiResponse()用于方法

    响应配置

  • @ApiResponses()用于方法

    响应集配置

  • @ResponseHeader()用于方法

    响应头设置,使用方法

  • @ApiModel()用于类;

    表示对类进行说明,用于参数用实体类接收

  • @ApiModelProperty()用于方法,字段;

    表示对model属性的说明或者数据操作更改

  • @ApiIgnore()用于类,方法,方法参数

    表示这个方法或者类被忽略

1. @Api()

用于类,表示标识这个类是swagger文档资源 ,使用方式:

@Api(value = "/url", description = "对api资源的描述")

与Controller注解并列使用。

属性配置:

属性名称 备注
value url的路径值
tags 如果设置这个值,value的值会被覆盖
description 对api资源的描述
basePath 基本路径,可以不配置
position 如果配置多个Api,想改变显示的顺序位置
produces For example,"application/json","application/xml"
consumes For example, "application/json, application/xml"
protocols Possible values: http, https, ws, wss
hidden 配置为true 将在文档中隐藏
authorizations 高级特性认证时配置

2. @ApiOperation()

用于方法上,说明方法的作用,每一个url资源的定义,使用方式:

@ApiOperation(
value = "url的路径值",
notes = "",
response = order,
tags = {'Pet Store'}
)

与Controller中的方法并列使用

属性配置:

属性名称 备注
value url的路径值
tags 如果设置这个值、value的值会被覆盖
description 对api资源的描述
basePath 基本路径可以不配置
position 如果配置多个Api 想改变显示的顺序位置
produces For example, "application/json, application/xml"
consumes For example, "application/json, application/xml"
protocols Possible values: http, https, ws, wss.
authorizations 高级特性认证时配置
hidden 配置为true 将在文档中隐藏
response 返回的对象
code http的状态码 默认 200
extensions 扩展属性
responseContainer 这些对象是有效的 "List", "Set" or "Map".,其他无效
httpMethod "GET", "HEAD", "POST", "PUT", "DELETE", "OPTIONS" and "PATCH"

3. @ApiParam()

用于方法,参数,字段说明,表示对参数的添加元数据(说明或是否必填等)。

使用方式:

public Result login(@RequestBody @ApiParam( value = "属性值", required = true) User user)

与Controller中的方法使用:

属性名称 备注
name 属性名称
value 属性值
defaultValue 默认属性值
allowableValues 可以不配置
required 是否属性必填
access 不过多描述
allowMultiple 默认为false
hidden 隐藏该属性
example 举例子

4. @ApiResponses()

响应集配置,使用方式:

@ApiResponses({ @ApiResponse(code = 400, message = "Invalid Order") })

与Controller中的方法并列使用。属性配置:

属性名称 备注
value 多个ApiResponse配置

5. @ApiResponse()

响应配置,使用方式:

@ApiResponse(code=400, message = "Invalid user supplied")

与Controller中的方法并列使用。属性配置:

属性名称 备注
code http的状态码
message 描述
response 默认响应类 Void
reference 参考ApiOperation中配置
responseHeaders 参考 ResponseHeader 属性配置说明
responseContainer 参考ApiOperation中配置

6.@ResponseHeader()

响应头设置,使用方法

@ResponseHeader(name = "响应头名称", description = "头描述")
属性名称 备注
name 响应头名称
description 头描述
response 默认响应类 Void
responseContainer 参考ApiOperation中配置

7. @ApiModel()用于类

表示对类进行说明,用于参数用实体类接收

8. @ApiModelProperty()用于方法,字段

表示对model属性的说明或者数据操作更改

9. @ApiImplicitParams()

用于方法,包含一组参数说明,表示单独的请求参数

10. @ApiImplicitParam()

用在@ApiImplicitParams注解中,指定一个请求参数的各个方面。即多个 @ApiImplicitParam

参考:

SpringBoot集成springfox-swagger2构建restful API

SpringMVC集成springfox-swagger2构建restful API

swagger2常用注解说明

swagger常用注解说明

swagger2常用注解的更多相关文章

  1. Swagger2常用注解和使用方法

    一   引入maven依赖 <!--整合Swagger2--> <dependency> <groupId>com.spring4all</groupId&g ...

  2. Swagger2常用注解解析(轻松构建Swagger)

    Swagger2常用注解解析 一.SpringBoot集成Swagger2 二.常用注解解析 具体使用举例说明: 一.SpringBoot集成Swagger2 引入相关jar包 <!-- swa ...

  3. swagger2常用注解说明

    说明: 1.这里使用的版本:springfox-swagger2(2.4)springfox-swagger-ui (2.4) 2.这里是说明常用注解的含义和基本用法(也就是说已经对swagger进行 ...

  4. swagger2 常用注解的使用

    一.@Api 效果: @Api注解放在类上面,这里的value是没用的,tags表示该controller的介绍. 二 .@ApiOperation 效果: @ApiOperation注解用于放在方法 ...

  5. swagger2 常用注解说明

    常用到的注解有: Api ApiModel ApiModelProperty ApiOperation ApiParam ApiResponse ApiResponses ResponseHeader ...

  6. Swagger2常用注解及其说明 (转)

    Api 用在Controller中,标记一个Controller作为swagger的文档资源 属性名称 说明 value Controller的注解 description 对api资源的描述 hid ...

  7. Swagger2:常用注解说明

    Swagger2常用注解说明 Spring Boot : Swagger 2使用教程:https://www.cnblogs.com/JealousGirl/p/swagger.html 这里只讲述@ ...

  8. swagger2的常用注解,传递参数的注意使用方法

    背景介绍: 刚开始的时候,在controller层使用@RequestParam的时候,发现这个参数是必须要输入值的,但是我们有时候必须查询的时候允许参数为空,使用这个注解就不行了. 在集成了swag ...

  9. Spring系列之Spring常用注解总结

    传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点:1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文件 ...

随机推荐

  1. ZYNQ DMA驱动及测试分析

    之前没有接触过DMA驱动.不了解它的原理,稍作学习先总结下dma驱动步骤: 1. 申请DMA中断. 2. 申请内存空间作为src和dts的空间. 3. 注册设备注册节点 4. 将申请到的src和dst ...

  2. Rhino模型制作——京东狗(练习网格切割)

    我最近做了一个京东狗的模型,我先把渲染好的模型给大家看一下. 别看这个模型很复杂,其实京东狗的模型是网上找的,我只是做了一个上面的洞.不过我告诉大家Rhino的下载地址:http://www.xuex ...

  3. Vue混入

    Vue 混入 混入 (mixins) 是一种分发 Vue 组件中可复用功能的非常灵活的方式.混入对象可以包含任意组件选项.当组件使用混入对象时,所有混入对象的选项将被混入该组件本身的选项. 数据对象合 ...

  4. TLS通信过程

    TLS通信过程 握手与密钥协商过程 基于RSA握手和密钥交换的客户端验证服务器为示例详解TLS/SSL握手过程 sequenceDiagram client->>server: clien ...

  5. FX-玩列表

    list = []while True: meus = ("1.查看","2.添加","3.删除","0.退出") pr ...

  6. python笔记20-装饰器、作用域

    函数的作用域是就近原则,从里往外找,如果自己函数里有,就拿过来如果自己的函数里面没有的话,就去它父级函数里面找,父亲用不了儿子的,儿子可以用父亲的函数只有被调用才会执行# name = 'python ...

  7. C++中:(*p)++和*(p++)和*p++的区别

    1. 理解自增自减运算符      (1)后置自增自减运算符优先级>前置自增自减运算符. (2)前置自增自减运算符“变量先自增自减再使用”. (3)后置自增自减运算符“变量先使用再自增自减”. ...

  8. 60行python代码分析2018互联网大事件

    2018年是改革开放四十周年,也是互联网发展的重要一年.经历了区块链,人工智能潮的互联网行业逐渐迎来了冬天.这一年里有无数的事件发生着,正好学了python数据处理相关,那么就用python对18年的 ...

  9. Linux上的10个Touch命令实例

    Linux Touch 命令 Touch命令可以用来修改文件访问或修改的时间戳.实际上,它更常仅仅用于快速的创建一个空白文件. 这篇文章展示了一些非常简单和快速的实例,使用Touch命令来修改时间戳和 ...

  10. Problem 1: Multiples of 3 and 5

    小白一枚,python解法,共同学习,一起进步. Problem 1: Multiples of 3 and 5 If we list all the natural numbers below 10 ...