SpringBoot整合Swagger3.0

2021-07-01  本文已影响0人  李小二的倔强

一、简介

Swagger UI 是一款 API 在线文档生成和调试工具。在需求不断变更的开发环境下,手动编写文档的效率实在太低。
在Swagger3版本中,减少了谷歌的guava依赖,更多的应用了java8的语法。新增了springboot流行的start启动包形式依赖。

二、POM添加依赖

<dependency>
   <groupId>io.springfox</groupId>
   <artifactId>springfox-boot-starter</artifactId>
   <version>3.0.0</version>
</dependency>

三、SwaggerConfig的配置

package cn.opendatachain.manage.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.oas.annotations.EnableOpenApi;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

/**
 * SwaggerConfig
 *
 * @author lishijian
 * @version dev-blockchain 1.0.0.RELEASE
 * <b>Creation Time:</b> 2021/3/23 10:35
 */
@Configuration
@EnableOpenApi
public class SwaggerConfig {

    @Bean
    public Docket createRestApi() {
        //swagger3.0使用 OAS_30
        return new Docket(DocumentationType.OAS_30)
            .apiInfo(apiInfo())
            .select()
            //此包路径下的类,才生成接口文档
            .apis(RequestHandlerSelectors.basePackage("cn.opendatachain.manage.controller"))
            //加了ApiOperation的类,才生成接口文档  
//            .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
            .paths(PathSelectors.any())
            .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
            .title("文档标题")
            .description("文档描述")
            .contact(new Contact("作者", "作者地址", "作者邮箱"))
            .version("1.0")
            .build();
    }
}


四、Swagger注解的使用说明

五、swagger使用

上一篇下一篇

猜你喜欢

热点阅读