SpringBoot整合swagger3.0(与swagger2.0差别)

SpringBoot整合swagger3.0

1.导入依赖


       <dependency>
           <groupId>io.springfoxgroupId>
           <artifactId>springfox-boot-starterartifactId>
           <version>3.0.0version>
       dependency>

2、编写配置文件

  • new Docket(DocumentationType.OAS_30)
    这个地方必须是DocumentationType.OAS_30
  • ApiInfo为了美观页面展示
  • .groupName(“尹稳健”) 这个地方是和别人一起写项目的时候可以配置的
  • .select()
    .apis(RequestHandlerSelectors.basePackage(“com.sky.controller”))
    .paths(PathSelectors.any())
    这个地方是写要扫描的路径
  • 最主要的就是
    @Configuration
    @EnableOpenApi
    这个两个注解一定要写到swagger配置上面才能生效,主启动类上面可以不用写

SwaggerConfig :

package com.sky.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.w3c.dom.DocumentType;
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;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

import java.util.ArrayList;

/**
* @author 尹稳健~
* @version 1.0
*/
@Configuration
@EnableOpenApi
public class SwaggerConfig {

   @Bean
   public Docket docket(){
       return new Docket(DocumentationType.OAS_30)
               .apiInfo(apiInfo())
               .groupName("尹稳健")
               .select()
               .apis(RequestHandlerSelectors.basePackage("com.sky.controller"))
               .paths(PathSelectors.any())
               .build();
   }


   @Bean
   public ApiInfo apiInfo(){
       Contact contact = new Contact("尹稳健",
               "https://blog.csdn.net/weixin_46073538", "[email protected]");
       return new ApiInfo("部门员工管理系统","部门员工管理系统文档","v2.0",
               "localhost:8080", contact,"SpringBoot2.6.2",
               "https://blog.csdn.net/weixin_46073538",new ArrayList());
   }

}

3、修改yml

解决办法,修改application.yml

spring:
  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher

4、访问http://localhost:8080/swagger-ui/index.html

与swagger2.x不同,swagger3必须访问这个路径
认真查看页面你会发现更多与swagger2.x不一样的东西

你可能感兴趣的:(SpringBoot,java)