0. 使用的项目名字:test_spring_boot
模块名字:test_swagger
1. 应用场景:分组开发
比如A这个模块由XYX开发
然而B这个模块由SHR开发
为了对二位开发的内容进行区分,便需要分组
在swagger就可以针对这种情况,分别查看A、B开发的这部分代码的接口
2. 配置:一个组对应一个docket
先附上docket的代码:
// --03.配置swagger的docket-----------------------------------------------------------------------------
@Bean
//参数environment表示当前的环境
public Docket docketForXYX(Environment environment) {
//你负责的这个Artifact的名字
String artifactName = "test_swagger";
return new Docket(DocumentationType.SWAGGER_2).
apiInfo(apiInfoForXYX())
//设置组名
.groupName("XYX")
//通过environment.acceptProfiles判断目前是否处在profiles中设定的环境之下
//如果是,返回true,则会开启swagger
.enable(environment.acceptsProfiles(profiles))
//指定要扫描的包,一般是controller包
.select().apis(RequestHandlerSelectors.basePackage("com.eshang." + artifactName + ".controller"))
.build();
}
重点看下面的代码
apiInfo(apiInfoForXYX())
//设置组名
.groupName("XYX")
(1)一个docket对应一个apiInfo(这个接口文档的信息)
(2)一个docket对应一个groupName(小组名)
因此,分组开发的思路是:
一组一个docket,分别配置好对应的apiInfo和groupName即可