当前位置:网站首页>[swagger close] The production environment closes the swagger method
[swagger close] The production environment closes the swagger method
2022-07-31 05:53:00 【m0_67391401】
swagger3 关闭配置(快捷方式)
配置参考
springfox:
documentation:
# 总开关(同时设置auto-startup=false,否则/v3/api-docs等接口仍能继续访问)
enabled: false
auto-startup: false
swagger-ui:
enabled: false
配置原理
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
</dependency>
springfox.boot.starter.autoconfigure.OpenApiAutoConfiguration
springfox.boot.starter.autoconfigure.SpringfoxConfigurationProperties

swagger2 关闭配置
swagger2 关闭主要是根据条件使swagger 配置不再生效,如
方法一:@ConditionalOnProperty
Configuration
@EnableSwagger2
@ConditionalOnProperty(name = "swagger.enable", havingValue = "true")
public class Swagger2 extends WebMvcConfigurationSupport {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//为当前包路径
.apis(RequestHandlerSelectors.basePackage("com.yq.demo.controller"))
.paths(PathSelectors.any())
.build();
}
//构建 api文档的详细信息函数,注意这里的注解引用的是哪个
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Spring Boot 测试使用 Swagger2 构建RESTful API")
.contact(new Contact("java乐园", "https://xxx.com", "[email protected]"))
.version("1.0")
.description("User API 描述")
.build();
}
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/swagger-ui.html").addResourceLocations(
"classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations(
"classpath:/META-INF/resources/webjars/");
}
}
application.yml 中配置如下关闭:
swagger:
# 只要不是true就不启用
enable: false
其他基于Conditional的方式
方法二 @Profile
原理跟第一个差不多,只是判断条件不同(profile判断配置文件,也即的参数)
Configuration
@EnableSwagger2
@Profile("!prod")
public class Swagger2 extends WebMvcConfigurationSupport {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
//为当前包路径
.apis(RequestHandlerSelectors.basePackage("com.yq.demo.controller"))
.paths(PathSelectors.any())
.build();
}
//构建 api文档的详细信息函数,注意这里的注解引用的是哪个
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Spring Boot 测试使用 Swagger2 构建RESTful API")
.contact(new Contact("java乐园", "https://xxx.com", "[email protected]"))
.version("1.0")
.description("User API 描述")
.build();
}
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/swagger-ui.html").addResourceLocations(
"classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations(
"classpath:/META-INF/resources/webjars/");
}
}
方法三 @Value 配置Docket 失效办法
Configuration
@EnableSwagger2
public class Swagger2 extends WebMvcConfigurationSupport {
@Value("{swagger2.enable:false}")
private boolean enableSwagger;
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.enable(enableSwagger)
.select()
//为当前包路径
.apis(RequestHandlerSelectors.basePackage("com.yq.demo.controller"))
.paths(PathSelectors.any())
.build();
}
//构建 api文档的详细信息函数,注意这里的注解引用的是哪个
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Spring Boot 测试使用 Swagger2 构建RESTful API")
.contact(new Contact("java乐园", "https://xxx.com", "[email protected]"))
.version("1.0")
.description("User API 描述")
.build();
}
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/swagger-ui.html").addResourceLocations(
"classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**").addResourceLocations(
"classpath:/META-INF/resources/webjars/");
}
}
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在.深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小.自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前.因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担.添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
随机推荐
[Elastic-Job] Overview of Distributed Scheduling Tasks
C language tutorial (1) - preparation
【云原生】开源数据分析 SPL 轻松应对 T+0
[Cloud native] Ribbon is no longer used at the bottom layer of OpenFeign starting from the 2020.0.X version
Three-party login using wallet Metamask based on web3.0
NFTs: The Heart of Digital Ownership
Regular Expression Basics
leetcode-1833. 雪糕的最大数量(排序+贪心)
安装Multisim出现 No software will be installed or removed解决方法
Common JVM interview questions and answers
初识正则表达式
08 【生命周期 组件】
The process and specific code of sending SMS verification code using flask framework
File operations in C language (1)
leetcode-每日一题558. 四叉树交集(分治递归)
11 【定位】
MySQL高级语句(一)
Artifact SSMwar exploded Error deploying artifact.See server log for details
On the side of Ali, tell me what are the application scenarios of message middleware you know?
[JVM Loading]---Class Loading Mechanism







