Swagger

作者: 落幕晟伤 | 来源:发表于2018-09-28 21:56 被阅读0次

定义

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

同类技术

confluene

README.md

rap--API文档工具

springfox-swagger简介

  • 1 签于swagger的强大功能,Java开源界大牛spring框架迅速跟上,它充分利用自已的优势,把swagger集成到自己的项目里,整了一个spring-swagger,后来便演变成springfox。springfox本身只是利用自身的aop的特点,通过plug的方式把swagger集成了进来,它本身对业务api的生成,还是依靠swagger来实现。
  • 2 原理:springfox的大致原理就是,在项目启动的过种中,spring上下文在初始化的过程,框架自动跟据配置加载一些swagger相关的bean到当前的上下文中,并自动扫描系统中可能需要生成api文档那些类,并生成相应的信息缓存起来。如果项目MVC控制层用的是springMvc那么会自动扫描所有Controller类,跟据这些Controller类中的方法生成相应的api文档。

优点

swagger确实是个好东西,可以跟据业务代码自动生成相关的api接口文档,尤其用于restful风格中的项目,开发人员几乎可以不用专门去维护rest api,这个框架可以自动为你的业务代码生成restfut风格的api,而且还提供相应的测试界面,自动显示json格式的响应。大大方便了后台开发人员与前端的沟通与联调成本。

组成部分

  • 1 Swagger API Spec,描述Rest API的语言
  • 2 Swagger UI,将Swagger API Spec以HTML页面展现出来的模块
  • 3 Swagger Editor,Swagger API Spec的编辑器

使用方法

  • 1 在pom.xml中引入依赖
<dependency>
<groupId>com.spring4all</groupId>
<artifactId>swagger-spring-boot-starter</artifactId>
<version>1.8.0RELEASE</veersion>
</dependency>
  • 2 在应用主类中增加@EnableSwagger2Doc注解
@SpringBootApplication
@EnableSwagger2Doc
public class Springboot2Swagger2Application{
     public static void main(String[] args){
         SpringApplication.run(Springboot2Swagger2Application.class,args);
             }
        }

默认情况下就能产生所有当前SpringMVC加载的请求的映射文件
访问地址:http://localhost:8080/swagger-ui.html

相关文章

网友评论

      本文标题:Swagger

      本文链接:https://www.haomeiwen.com/subject/xizeoftx.html