SpringBoot 3.x + Swagger3 踩坑实录
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import org.springdoc.core.SwaggerUiConfigProperties;
import org.springdoc.core.SwaggerUiOAuthProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI customOpenAPI() {
return new OpenAPI()
.info(new Info()
.title("示例API文档")
.version("1.0.0")
.description("这是一个示例API文档")
.license(new License().name("Apache 2.0").url("http://springdoc.org")));
}
@Bean
public SwaggerUiConfigProperties customSwaggerUiConfig() {
SwaggerUiConfigProperties properties = new SwaggerUiConfigProperties();
properties.setDefaultModelRendering(ModelRendering.MODEL);
properties.setDisplayRequestDuration(true);
// 其他自定义配置
return properties;
}
@Bean
public SwaggerUiOAuthProperties customSwaggerUiOAuthProperties() {
SwaggerUiOAuthProperties properties = new SwaggerUiOAuthProperties();
// 配置OAuth相关属性
return properties;
}
}
这个代码示例展示了如何在SpringBoot 3.x项目中配置Swagger UI的基本信息、版本和许可证信息,同时也展示了如何自定义Swagger UI的配置,比如请求持续时间显示和默认模型渲染方式。此外,还演示了如何配置Swagger UI的OAuth 2.0设置,以确保API文档的安全性。
评论已关闭