SpringBoot3 Swagger笔记整理

  1. 添加依赖

    xml 复制代码
    <dependency>
        <groupId>org.springdoc</groupId>
        <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
    </dependency>
  2. 编写配置类

    java 复制代码
    @Configuration
    public class SwaggerConfig {
       @Bean
       public OpenAPI springShopOpenAPI() {
          return new OpenAPI()
                  .info(new Info().title("SpringShop API")
                          .description("Spring shop sample application")
                          .version("v0.0.1")
                          .license(new License().name("Apache 2.0").url("https://springdoc.org")))
                  .addSecurityItem(buildSecurityRequirement())
                  .components(new Components().securitySchemes(buildSecuritySchemes()))
                  .externalDocs(new ExternalDocumentation()
                          .description("SpringShop Wiki Documentation")
                          .url("https://springshop.wiki.github.org/docs"));
       }
    
       private SecurityRequirement buildSecurityRequirement() {
          SecurityRequirement securityRequirement = new SecurityRequirement();
          securityRequirement.addList("token");
          securityRequirement.addList("basic");
          return securityRequirement;
       }
    
       private Map<String, SecurityScheme> buildSecuritySchemes() {
          Map<String, SecurityScheme> securitySchemes = new HashMap<>();
          // token
          SecurityScheme token = new SecurityScheme()
                  .type(SecurityScheme.Type.APIKEY) // 类型
                  .name("token") // 请求头的 name
                  .in(SecurityScheme.In.HEADER);
          securitySchemes.put("token", token);
          // basic
          SecurityScheme basic = new SecurityScheme()
                  .type(SecurityScheme.Type.APIKEY) // 类型
                  .name("Authorization")
                  .in(SecurityScheme.In.HEADER) ;
          securitySchemes.put("basic", basic);
          return securitySchemes;
       }
    }
  3. application.yml配置

    yaml 复制代码
    springdoc:
      api-docs:
        enabled: true
        path: /v3/api-docs
      swagger-ui:
        enabled: true
        path: /index.html
      packages-to-scan: com.yicj.study.springdoc.controller
  4. 启动项目,访问http://localhost:8081/swagger-ui/index.html,即可查看API文档

相关推荐
陌殇殇5 分钟前
002 SpringCloudAlibaba整合 - Feign远程调用、Loadbalancer负载均衡
java·spring cloud·微服务
猎人everest1 小时前
SpringBoot应用开发入门
java·spring boot·后端
山猪打不过家猪3 小时前
ASP.NET Core Clean Architecture
java·数据库·asp.net
AllowM3 小时前
【LeetCode Hot100】除自身以外数组的乘积|左右乘积列表,Java实现!图解+代码,小白也能秒懂!
java·算法·leetcode
不会Hello World的小苗4 小时前
Java——列表(List)
java·python·list
二十七剑5 小时前
jvm中各个参数的理解
java·jvm
东阳马生架构6 小时前
JUC并发—9.并发安全集合四
java·juc并发·并发安全的集合
计算机小白一个6 小时前
蓝桥杯 Java B 组之岛屿数量、二叉树路径和(区分DFS与回溯)
java·数据结构·算法·蓝桥杯
菠菠萝宝7 小时前
【Java八股文】10-数据结构与算法面试篇
java·开发语言·面试·红黑树·跳表·排序·lru
不会Hello World的小苗7 小时前
Java——链表(LinkedList)
java·开发语言·链表