运行环境 Swagger 3.0.0、springboot 3.0.0
产生原因: Swagger 3.0.0不支持spring3.0.0
两个解决方案:
1.降低springboot版本为2.x
2.放弃Swagger,使用 springdoc-openapi-starter-webmvc-ui
第二种解决方案:
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.0.0-M3</version>
</dependency>
/**
* 接口文档配置
*
* @author Canva
*/
@Configuration
public class SpringDocConfig {
@Bean
public OpenAPI apiInfo() {
return new OpenAPI().info(new Info().title("后端接口文档").version("1.0.0"));
}
@Bean
public GroupedOpenApi httpApi() {
return GroupedOpenApi.builder()
.group("http")
.pathsToMatch("/**")
.build();
}
}
注解变化 @Api ==>@Tag(name="",description="")
@ApiOperation==》@ApiResponse(description = "XXXX", content = @Content(mediaType = "application/json"))
@ApiModelProperty==》@Schema
@Tag 用来设置 Controller 的名称和描述,类似于给 Postman 的 Collections 命名;
@ApiResponses 和 @ApiResponse 用来配置响应;
@Operation 用来设置接口名称和描述;
@Parameter 用来设置请求参数的描述、是否必填和示例。
当Swagger3.0.0与springboot3.0.0版本不兼容时,有两种解决方案:降级springboot版本或使用springdoc-openapi-starter-webmvc-ui替代Swagger。文中提供了使用springdoc的配置示例,包括@Tag、@ApiResponse等新注解的使用方法。
1425

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



