SpringBoot快速整合Springdoc生成Swagger文档基础使用篇
一、添加Maven依赖
<!--springdoc的依赖-->
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<springdoc.version>2.0.2</springdoc.version>
</dependency>
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-common</artifactId>
<springdoc.version>2.0.2</springdoc.version>
</dependency>
二、添加配置类与配置文件
配置类:
@Configuration
public class QqinshaowuAdminSwaggerConfig {
@Bean
public OpenAPI springShopOpenAPI() {
return new OpenAPI()
.info(new Info().title("项目平台接口文档")
.description("接口描述")
.version("2.0.0"))
.externalDocs(new ExternalDocumentation().description("")
.url(""));
}
@Bean
public GroupedOpenApi adminApi() {
return GroupedOpenApi.builder()
//分组名
.group("admin")
//扫描路径,将路径下有swagger注解的接口解析到文档中
.packagesToScan("com.qqinshaowu")
.build();
}
}
配置文件:
# swagger的文档配置
springdoc:
swagger-ui:
path: /qqinshaowu-api-docs.html
#当 persistAuthorization 参数设置为 true 时,客户端会将授权信息保存在本地存储中,以便在下次访问时自动使用该授权信息。
#如果设置为 false,则客户端不会保存授权信息,需要在每次访问时重新进行授权。
persistAuthorization: true
# 设置API接口按照字母顺序排序
tags-sorter: alpha
# 设置HTTP方法按照字母顺序排序 method/alpha
operations-sorter: alpha
项目结构
三、创建接口并测试
swagger注解只需要记住在什么地方用,会有什么效果即可
@Tag(name = "这是名字",description = "这是描述")
@RestController
@RequestMapping(value = "/product")
public class ProductController {
@Operation(
summary = "这是HTTP显示在外的描述,供前端同学直接看到",
description = """
这个是HTTP接口的内部描述,可详细描述;
"""
)
@PostMapping()
public void addProduct( ){
System.out.println("整合swagger嘞嘿嘿嘿!~");
}
}
启动测试看看效果: