Swagger的应用

摘要:
1、 本文介绍了一个用于生成、描述、调用和可视化RESTful Web框架的规范性完整框架。

一、介绍

  • 一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 框架。

二、依赖

<dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger2</artifactId>
      <version>2.9.2</version>
</dependency>
<dependency>
     <groupId>io.springfox</groupId>
     <artifactId>springfox-swagger-ui</artifactId>
     <version>2.9.2</version>
</dependency>
Swagger的应用第1张Swagger的应用第2张
package com.guli.edu.config;

@Configuration
@EnableSwagger2
public class Swagger2Config {

    @Bean
    public Docket webApiConfig(){

        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("webApi")
                .apiInfo(webApiInfo())
                .select()
                .paths(Predicates.not(PathSelectors.regex("/admin/.*")))
                .paths(Predicates.not(PathSelectors.regex("/error.*")))
                .build();

    }

    @Bean
    public Docket adminApiConfig(){

        return new Docket(DocumentationType.SWAGGER_2)
                .groupName("adminApi")
                .apiInfo(adminApiInfo())
                .select()
                .paths(Predicates.and(PathSelectors.regex("/admin/.*")))
                .build();

    }

    private ApiInfo webApiInfo(){

        return new ApiInfoBuilder()
                .title("网站-课程中心API文档")
                .description("本文档描述了课程中心微服务接口定义")
                .version("1.0")
                .contact(new Contact("Helen", "http://atguigu.com", "55317332@qq.com"))
                .build();
    }

    private ApiInfo adminApiInfo(){

        return new ApiInfoBuilder()
                .title("后台管理系统-课程中心API文档")
                .description("本文档描述了后台管理系统课程中心微服务接口定义")
                .version("1.0")
                .contact(new Contact("Helen", "http://atguigu.com", "55317332@qq.com"))
                .build();
    }
}
View Code

三、注解

   参考:springboot集成swagger2 

四、配置(可以使用配置类或者配置文件)

swagger:
  title: TMax API接口文档
  description: TMax Api Documentation
  version: 1.0.0
  termsOfServiceUrl: https://www.sscai.club
  contact:
    name: niceyoo
    url: https://www.sscai.club
    email: apkdream@163.com

 五、两款美化插件

1、swagger-mg-ui
        <dependency>
            <groupId>com.zyplayer</groupId>
            <artifactId>swagger-mg-ui</artifactId>
            <version>1.0.6</version>
        </dependency>

2、knife4j
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-spring-ui</artifactId>
            <version>2.0.4</version>    
        </dependency>

免责声明:文章转载自《Swagger的应用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇六、Spring Cloud 之旅 -- Feign 更优雅的REST客户端介绍 使用 及 自定义注解器和处理请求cassandra数据备份与迁移下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Django Rest framework Swagger生成api文档

关于swagger Swagger能成为最受欢迎的REST APIs文档生成工具之一,有以下几个原因: - Swagger 可以生成一个具有互动性的API控制台,开发者可以用来快速学习和尝试API。 - Swagger 可以生成客户端SDK代码用于各种不同的平台上的实现。 - Swagger 文件可以在许多不同的平台上从代码注释中自动生成。 - S...

Abp的swagger UI 出现Failed to load API definition.

Abp 出现Failed to load API definition.如下图: 原因:本次出现的原因是Api里面的方法重名了(只是方法的参数不一样)(可能是controller中的auction上面少了(hettpget,httpdelete)属性,其它原因也可能引起) 解决方法:修改其中一个方法的名字...

Swagger发布服务器时错误 500 : { "Message": "An error has occurred." }

在做Web API的文档自动生成时,本机调试都正常,发布到服务器上出现500错误 500 : { "Message": "An error has occurred." } /api/swagger/docs/v1 原因是开发模式为Debug配置环境,发布服务器后在release模式下没找到对应的document xml配置文件 解决办法,在项目配置do...

swagger 的使用

最近在用 .Net Core 做项目 了解到swagger 是一个不错的工具 简单介绍一下 在使用asp.net core 进行api开发完成后,书写api说明文档对于程序员来说想必是件很痛苦的事情吧,但文档又必须写,而且文档的格式如果没有具体要求的话,最终完成的文档则完全取决于开发者的心情。或者详细点,或者简单点。那么有没有一种快速有效的方法来构建api...

懒得写文档,swagger文档导出来不香吗

导航 前言 离线文档 1 保存为html 2 导出成pdf文档 3 导出成Word文档 参考 前言   早前笔者曾经写过一篇文章《研发团队,请管好你的API文档》。团队协作中,开发文档的重要性,这里就不再赘述,今天的话题集中在如何进一步提升更加高效的使用文档。 离线文档   swagger已经很方便了,我们为什么还需要离线文档?公司同一个项目组,...

go-swagger的简单使用

一、下载go-swagger go-swagger 官方下载 根据不同个的操作系统选择对应的 二、添加环境变量 2.1 window swagger_windows_amd64.exe 将swagger_windows_amd64.exe 重命名 成 swagger.exe 然后将该软件放到$GOROOT/bin 中 2.2 linux swagger...