SpringBoot整合Swagger3的分组问题及解决
作者:y_bccl27
这篇文章主要介绍了SpringBoot整合Swagger3的分组问题及解决过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
Swagger3如果没有设置分组
则所有的API接口全在一个default分组中,
如下所示:

如果功能模块和接口数量逐渐增多时
就会显得有些凌乱,不方便查找和使用,这时可提供的解决方法就是对API接口进行分组,配置多个分组只需要配置多个docket,并通过Swagger实例Docket的groupName()方法定义各个分组名
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
@Configuration
public class Swagger3Config {
@Bean
public Docket createRestApi1() {
return new Docket(DocumentationType.OAS_30)
.apiInfo(apiInfo())
.groupName("User")
.select()
.apis(RequestHandlerSelectors.basePackage("com.bc.work.controller.user"))
.paths(PathSelectors.any())
.build();
}
@Bean
public Docket createRestApi2() {
return new Docket(DocumentationType.OAS_30)
.apiInfo(apiInfo())
.groupName("Sys")
.select()
.apis(RequestHandlerSelectors.basePackage("com.bc.work.controller.sys"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Swagger3接口文档")
.description("接口文档描述部分")
.contact(new Contact("bc", "http://www.baidu.com", "123456@qq.com"))
.version("1.0版本")
.build();
}
}

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
