1.什么是Swagger2?

Swagger是一个RESTFUL 接口的文档在线自动生成和功能测试的框架。

Swagger 是一个规范和完整的框架。用于生成、描述、调用和可视化RestFul风格的Web服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新文件的方法、参数和模型紧密集成到服务器的代码,允许Api 来始终保持同步,Swagger让部署管理和使用功能强大的Api。

官网:http://swagger.io/

GIthub地址:https://github.com/swagger-api/swagger-ui

2.Swagger2的maven依赖

io.springfox

springfox-swagger2

2.2.2

io.springfox

springfox-swagger-ui

2.2.2

3.SwaggerConfig的配置

12.png

通过@Configuration注解,让SpringBoot来加载该类的配置,再通过@EnableSwagger2注解来启用Swagger2Config。

再通过buildDocket函数创建Docket的Bean之后。buildApiInfo() 用来创建该Api的基本信息(这些信息会展示在文档页面当中)。

select()函数返回一个ApiSelectBuilder实例来控制哪些接口来暴露给swagger2来展示,一般采用指定扫描的包路径来定义。

Swagger会扫描该包下的所有Controller定义的Api,并产生文档内容。(除了被@ApiIgnore指定的请求)。

4,。配置Controller中的Api

下面的内容是基于spring-boot进行配置的,不一定适用于所有的框架,

(1) 下面是常用的一些注解:

@Api: 用在类上,说明该类的作用。

@ApiOperation:用在方法上 ,说明该方法的作用,标注在具体的请求中,value和notes的作用差不多,都是对请求做以说明,tags 则是对请求进行分类的,比如说,你有好几个Controller,分别属于不同的功能模快,那么这里就可以用tags来分类的,

看上去条理性很好

@ApiImplicitParams:用在方法上包含一组参数说明

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

paramType:参数放在哪个地方

header 请求参数的获取:@RequestHeader

query 请求参数的获取:@RequestParam

path(用于restful接口) 请求参数的获取:@PathVariable

body(不常用)

form(不常用)

name:参数名

dataType:参数类型

required:参数是否必须传

value:参数的意思

defaultValue:参数的默认值

@ApiResponses:用于表示一组响应

@ApiResponse:用在@ApiResponses中,一般用于表达一个错误的响应信息

code:数字,例如400

message:信息,例如"请求参数没填好"

response:抛出异常的类

@ApiModel:描述一个Model的信息(这种一般用在post创建的时候,使用@RequestBody这样的场景,请求参数无法使用@ApiImplicitParam注解进行描述的时候)表明这是一个被swagger框架管理的model,用于class上

@ApiModelProperty 这里顾名思义,描述一个model的属性,就是标注在被标注了@ApiModel的class的属性上,这里的value是对字段的描述,example是取值例子,注意这里的example很有用,对于前后端开发工程师理解文档起到了关键的作用,因为会在api文档页面上显示出这些取值来;这个注解还有一些字段取值,可以自己研究,举例说一个:position,表明字段在model中的顺序。

swagger2maven依赖_swagger2技术相关推荐

  1. swagger2maven依赖_Swagger2安装及使用

    项目开发实现前后端分离,Swagger2是非常好用使用的一个框架!!!真香警告,个人感觉比Postman开发效率提升了很多,注解项会让代码更容易读 在后端开发中经常需要对移动客户端提供RESTful ...

  2. spring依赖注入_Spring依赖注入技术的发展

    spring依赖注入 回顾Spring框架的历史,您会发现在每个发行版中实现依赖注入的方法越来越多. 如果您使用该框架已经超过一个月,那么在这篇回顾性文章中可能不会发现任何有趣的东西. 除了Scala ...

  3. Spring依赖注入技术的发展

    回顾Spring框架的历史,您会发现实现依赖注入的方式在每个发行版中都在增加. 如果您使用该框架已经超过一个月,那么在这篇回顾性文章中可能不会发现任何有趣的东西. 除了Scala中的最后一个示例,没有 ...

  4. 第五节 .NetFramework框架依赖注入技术实现

    .NetFramework框架不提供默认依赖注入容器对依赖注入技术进行实现,如果所开发程序项目是基于.NetFramework框架且这个项目需要使用依赖注入技术进行实现,常用的手段有两种: 1.使用微 ...

  5. VDG值依赖分析技术

    北大软件CoBOT(库博)是具有自主知识产权的静态检测工具.在2013年获得了计算机软件著作权,基于值依赖分析的C程序缺陷静态检测系统.很多同行对值依赖分析的概念可能不是太清楚,今天我们主要分析一下这 ...

  6. docker依赖的技术探索

    参考资料 <自己动手写docker> http://www.sel.zju.edu.cn/?p=556 docker原理探索 docker用于开发应用,交付应用,运行应用的一种开源的软件. ...

  7. 工作中常用到的 Spring 依赖管理技术盘点

    点击关注公众号,实用技术文章及时了解 今天主要和大家分享一些在工作中可能会用到的Spring依赖注入,依赖查找方面的技术点整理,非常实用. Spring依赖查找专题 单一类型查找 常见用法如下所示: ...

  8. swagger2maven依赖_Maven + SpringMVC项目集成Swagger

    Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法,参数和模型紧密集成到服 ...

  9. swagger2maven依赖_swagger配置

    1.maven依赖 (第一个后台/v2/api-do,第二个UI页面引用的jar包,版本2.6.1) io.springfox springfox-swagger2 2.6.1 io.springfo ...

最新文章

  1. ORB_SLAM2程序入口(System.cc)
  2. 深入理解Android消息处理系统——Looper、Handler、Thread
  3. 计算机硬件大型作业报告,计算机硬件技术大作业报告.doc
  4. WIN32 SDK对COM的支持
  5. batocera游戏整合包_星露谷物语绅士mod整合包
  6. ubuntu15.10下code::blocks设置运行窗口为gnome命令行
  7. Dubbo是如何进行远程服务调用的?(源码流程跟踪)
  8. 深度学习笔记(4) 浅层神经网络
  9. DATE_FORMAT、when case函数用法
  10. 苹果修复严重的代码执行漏洞,影响 iOS 和 iPadOS 操作系统
  11. 从0开始学Swift笔记整理(五)
  12. MariaDB数据库用户创建/删除及权限授权/撤回
  13. BZOJ 1055 [HAOI2008]玩具取名 DP
  14. php 模块不存在,模块不存在:index.php?
  15. 计算机考研复试难,艰难与快乐:2008年重庆邮电大学计算机考研复试经历
  16. 单链表的逆置(递归和非递归)
  17. BoxSup: Exploiting Bounding Boxes to Supervise Convolutional Networks for Semantic Segmentation
  18. jsp代码中ArrayList函数提示“无法解释为类型”
  19. 用JavaSwing也能写出win10扁平风的软件
  20. SpringMVC基础三

热门文章

  1. ViewPager、notifyDataSetChanged和观察者模式
  2. 鼠标悬浮显示下拉菜单,离开隐藏
  3. wind river 风河系统公司 发展历史:vxworks创造者
  4. 大数据项目重温——电商数据仓库(一)数据生成模块
  5. github客户端怎样上传代码 mac
  6. 活动星投票2023经典折子戏专场制作投票链接多少钱免费创建投票链接制作
  7. php菲波那切数列,php实现菲波那切数列和杨辉三角
  8. NCO/CDO 快速处理数据
  9. 分布式缓存:爱我你怕了吗?
  10. Excel做个九九表,给有需要的宝宝打印用。