springdoc-openapi Java 库有助于使用 Spring Boot 项目自动生成 API 文档。springdoc-openapi 通过在运行时检查应用程序来根据 Spring 配置、类结构和各种注释推断 API 语义。
该库会自动生成 JSON/YAML 和 HTML 格式的页面文档。生成的文档可以使用swagger-api注释进行补充。
github地址 官网
1. 项目依赖版本
- Spring-Boot: 3.1.0
2. 引入依赖
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.3.0</version>
</dependency>
3. 配置
package com.omni.admin.swagger;
import io.swagger.v3.oas.models.Components;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.security.SecurityRequirement;
import io.swagger.v3.oas.models.security.SecurityScheme;
import jakarta.annotation.Resource;
import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* SpringDoc配置
**/
@Configuration
@ConditionalOnExpression("${springdoc.api-docs.enabled:true}")
public class SwaggerDocConfig {
@Resource
private SwaggerDocProperties springDocProperties;
@Bean
public OpenAPI openAPI() {
return new OpenAPI().info(new Info().title(springDocProperties.getTitle()).version(springDocProperties.getApplicationVersion()))
.addSecurityItem(new SecurityRequirement().addList(springDocProperties.getTokenName()))
.components(new Components().addSecuritySchemes(springDocProperties.getTokenName(),getSecurityScheme()));
}
private SecurityScheme getSecurityScheme(){
return new SecurityScheme().name(springDocProperties.getTokenName()).in(SecurityScheme.In.HEADER).type(SecurityScheme.Type.APIKEY).scheme("basic");
}
}
package com.omni.admin.swagger;
import lombok

最低0.47元/天 解锁文章
2078

被折叠的 条评论
为什么被折叠?



