引入依赖项,以下是gradle版本的libraries.gradle依赖文件的
ext {
versions = [
springFoxSwagger2: '2.9.2'
]
libraries = [
/**swagger**/
swagger_bootstrap_ui : "com.github.xiaoymin:swagger-bootstrap-ui:1.9.3",
springfox_swagger2 : "io.springfox:springfox-swagger2:${versions.springFoxSwagger2}",
springfox_swagger2_ui : "io.springfox:springfox-swagger-ui:${versions.springFoxSwagger2}",
]
}
配置文件 application.yml 配置swagger开关
#swagger接口文档开关
swagger:
enable: true
customer:
env: TEST
swagger配置类
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi(@Value("${swagger.enable}") Boolean enable) {
return new Docket(DocumentationType.SWAGGER_2)
.genericModelSubstitutes(DeferredResult.class)
.apiInfo(testApiInfo())
.select()
.apis(Predicates.or(
RequestHandlerSelectors.withMethodAnnotation(TestDoc.class)
, RequestHandlerSelectors.withClassAnnotation(TestDoc.class)
))
.paths(PathSelectors.any())
.build()
.enable(enable);
}
private ApiInfo testApiInfo() {
return
new ApiInfo(
"测试中心接口",
"测试中心接口",
"1.0.0",
"API TERMS URL",
new Contact("title", "", ""),
"© 2021 title",
"license url",
new ArrayList<>());
}
}
Doc
import org.springframework.stereotype.Component;
import java.lang.annotation.*;
@Target({ElementType.TYPE, ElementType.METHOD, ElementType.CONSTRUCTOR, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Component
public @interface TestDoc {
}
项目启动后访问http://{IP地址}:{端口号}/doc.html即可访问
求一键三连(关注+点赞+转发),制作不易,谢谢,你的关注就是我最大的动力