From 72d89716f599edc910affe7d99042888191fc6cd Mon Sep 17 00:00:00 2001 From: furunxin <864795252@qq.com> Date: Mon, 20 Jul 2020 18:22:00 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=90=88=E5=90=8C=E7=BB=AD=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/iformall/config/Swagger2Config.java | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/mallinkCApi/src/main/java/com/iformall/config/Swagger2Config.java b/mallinkCApi/src/main/java/com/iformall/config/Swagger2Config.java index 9e6318868..2118b9dbd 100644 --- a/mallinkCApi/src/main/java/com/iformall/config/Swagger2Config.java +++ b/mallinkCApi/src/main/java/com/iformall/config/Swagger2Config.java @@ -1,5 +1,6 @@ package com.iformall.config; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; @@ -10,9 +11,11 @@ import springfox.documentation.schema.ModelRef; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Parameter; import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.paths.RelativePathProvider; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; +import javax.servlet.ServletContext; import java.util.ArrayList; import java.util.List; @@ -21,6 +24,9 @@ import java.util.List; @EnableSwagger2 public class Swagger2Config { + @Autowired + private ServletContext servletContext; + @Bean public Docket createRestApi() { ParameterBuilder tokenPar = new ParameterBuilder(); @@ -34,7 +40,13 @@ public class Swagger2Config { .apis(RequestHandlerSelectors.basePackage("com.iformall.controller")) .paths(PathSelectors.any()) .build() - .globalOperationParameters(pars); + .globalOperationParameters(pars) + .pathProvider(new RelativePathProvider(servletContext) { + @Override + public String getApplicationBasePath() { + return "/api"; + } + }); } private ApiInfo apiInfo() { From e71bf2b84c3eac687638fdfdfc189c7562bc4964 Mon Sep 17 00:00:00 2001 From: furunxin <864795252@qq.com> Date: Mon, 20 Jul 2020 18:35:34 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=90=88=E5=90=8C=E7=BB=AD=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/config/Swagger2Config.java | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 mallinkAdmin/src/main/java/com/iformall/config/Swagger2Config.java diff --git a/mallinkAdmin/src/main/java/com/iformall/config/Swagger2Config.java b/mallinkAdmin/src/main/java/com/iformall/config/Swagger2Config.java new file mode 100644 index 000000000..335b86b7b --- /dev/null +++ b/mallinkAdmin/src/main/java/com/iformall/config/Swagger2Config.java @@ -0,0 +1,61 @@ +package com.iformall.config; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.ParameterBuilder; +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.schema.ModelRef; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.service.Parameter; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.paths.RelativePathProvider; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +import javax.servlet.ServletContext; +import java.util.ArrayList; +import java.util.List; + +//参考:http://blog.csdn.net/catoop/article/details/50668896 +@Configuration +@EnableSwagger2 +public class Swagger2Config { + + @Autowired + private ServletContext servletContext; + + @Bean + public Docket createRestApi() { + ParameterBuilder tokenPar = new ParameterBuilder(); + List pars = new ArrayList(); + //增加一个request的header参数 + tokenPar.name("token").description("令牌").modelRef(new ModelRef("string")).parameterType("header").required(false).build(); + pars.add(tokenPar.build()); + return new Docket(DocumentationType.SWAGGER_2) + .apiInfo(apiInfo()) + .select() + .apis(RequestHandlerSelectors.basePackage("com.iformall.controller")) + .paths(PathSelectors.any()) + .build() + .globalOperationParameters(pars) + .pathProvider(new RelativePathProvider(servletContext) { + @Override + public String getApplicationBasePath() { + return "/api"; + } + }); + } + + private ApiInfo apiInfo() { + return new ApiInfoBuilder() + .title("a端 api") + .description("a api") + .termsOfServiceUrl("http://localhost:7000") + .version("2.0") + .build(); + } + +} \ No newline at end of file