为何提出?
RESTful API 需要面对多个开发人员或者多个开发团队:IOS 开发、Android开发或者是Web 开发。为了减少与其他团队平时开发期间繁琐的沟通成本,出现了Swagger2 。
传统的做法是创建一份RESTful API 文档来记录所有接口的细节,这样会出现以下问题:
1. 接口多,不利于维护
2. 接口调整,文档不一致
Swagger 作用于接口,让接口数据可视化,尤其适合于 Restful APi
Swagger 介绍
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的Web 服务。总体目标是实现客户端和文件系统作为服务器以同样的速度来更新。文件的方法、参数和模型紧密集成到服务器端的代码,允许API 来始终保持同步,Swagger 让部署管理和使用功能强大的API 从未如此简单。
Swagger 的组件
Swagger 分成一些不同的块。
swagger spec: 对元素的嵌套、命令等采用官方模式。
swagger editor: 在线编辑器,用于验证YML 格式内容是否违反了 swagger spec 规范
swagger-UI: 这是一套HTML/CSS/JS 框架,用于遵守Swagger spec 的 JSON 或 YML 文件,并生成API 文档的UI 导航。
swagger-codegen: 这个工具可以为不同的平台生成客户端SDK
swagger-validator: 这个小工具用于校验生成文档说明文件是否符合语法规定。
Swagger 实现过程
1.使用方式
在pom.xml 中引入依赖
<dep