springboot-swagger:配置API分组
1 配置分组
如果没有配置分组,默认是default.通过groupName()方法即可配置分组
1.1 修改SwaggerConfig
src/main/java/com/lv/config/SwaggerConfig.java
//配置了Swagger的Docket的bean实例
@Bean
public Docket docket(Environment environment){
//设置要显示的swagger环境
Profiles profiles = Profiles.of("dev", "test");
//通过environment.acceptsProfiles判断是否处在自己设定的环境当中
boolean flag = environment.acceptsProfiles(profiles);
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.groupName("新一")
.enable(flag)//enable是否启动Swagger,如果为false,则Swagger不能在浏览器中访问
.select()
.apis(RequestHandlerSelectors.basePackage("com.lv.controller"))
//.paths(PathSelectors.ant("/lv/**"))
.build();
}
1.2 启动程序测试
2 配置多个分组
配置多个分组只需要在SwaggerConfig配置多个docket即可
2.1 修改SwaggerConfig
src/main/java/com/lv/config/SwaggerConfig.java
package com.lv.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;
import org.springframework.core.env.Profiles;
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;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.ArrayList;
@Configuration
@EnableSwagger2 //开启Swagger2
public class SwaggerConfig {
@Bean
public Docket docket1(){
return new Docket(DocumentationType.SWAGGER_2).groupName("A");
}
@Bean
public Docket docket2(){
return new Docket(DocumentationType.SWAGGER_2).groupName("B");
}
@Bean
public Docket docket3(){
return new Docket(DocumentationType.SWAGGER_2).groupName("C");
}
//配置了Swagger的Docket的bean实例
@Bean
public Docket docket(Environment environment){
//设置要显示的swagger环境
Profiles profiles = Profiles.of("dev", "test");
//通过environment.acceptsProfiles判断是否处在自己设定的环境当中
boolean flag = environment.acceptsProfiles(profiles);
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.groupName("新一")
.enable(flag)//enable是否启动Swagger,如果为false,则Swagger不能在浏览器中访问
.select()
.apis(RequestHandlerSelectors.basePackage("com.lv.controller"))
//.paths(PathSelectors.ant("/lv/**"))
.build();
}
//配置swagger信息 : apiInfo
private ApiInfo apiInfo(){
//作者信息
Contact contact = new Contact("工藤新一", "https://www.cnblogs.com/lv1024/", "1148397597@qq.com");
return new ApiInfo(
"工藤新一的swaggerAPI文档",
"心机之蛙一直摸你肚子",
"v1.0",
"https://www.cnblogs.com/lv1024/",
contact,
"Apache 2.0",
"http://www.apache.org/licenses/LICENSE-2.0",
new ArrayList<>());
}
}
2.2 重启程序测试
多个分组配置成功