From 43f7134ddd265fce1c49e4a3676316135ac2c3f8 Mon Sep 17 00:00:00 2001 From: ms-dev Date: Wed, 16 Jan 2019 16:54:25 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../net/mingsoft/SwaggerApiSuffixAspect.java | 42 +++++++++++++++++++ .../net/mingsoft/config/SwaggerConfig.java | 2 +- 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 src/main/java/net/mingsoft/SwaggerApiSuffixAspect.java diff --git a/src/main/java/net/mingsoft/SwaggerApiSuffixAspect.java b/src/main/java/net/mingsoft/SwaggerApiSuffixAspect.java new file mode 100644 index 00000000..3aedfa94 --- /dev/null +++ b/src/main/java/net/mingsoft/SwaggerApiSuffixAspect.java @@ -0,0 +1,42 @@ +package net.mingsoft; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; + +import org.aspectj.lang.annotation.AfterReturning; +import org.aspectj.lang.annotation.Aspect; +import org.springframework.context.annotation.EnableAspectJAutoProxy; +import org.springframework.stereotype.Component; + +import io.swagger.models.Path; +import io.swagger.models.Swagger; + +/** + * 将接口url中追加模式后缀.do + * @author impler + * @date 2017年9月30日 + */ +@Aspect +@EnableAspectJAutoProxy +@Component +public class SwaggerApiSuffixAspect { + + @AfterReturning(pointcut="execution(public io.swagger.models.Swagger springfox.documentation.swagger2.mappers.ServiceModelToSwagger2MapperImpl.mapDocumentation(..))", + returning="swagger") + public void doBeforeBussinessCheck(Swagger swagger){ + Map paths = swagger.getPaths(); + if(null != paths){ + Map newPaths = new HashMap(paths); + paths.clear(); + Iterator it = newPaths.keySet().iterator(); + while(it.hasNext()){ + String oldKey = it.next(); + // 添加模式后缀 .do + String newKey = oldKey + ".do"; + paths.put(newKey, newPaths.get(oldKey)); + } + newPaths = null; + } + } +} diff --git a/src/main/java/net/mingsoft/config/SwaggerConfig.java b/src/main/java/net/mingsoft/config/SwaggerConfig.java index 0aff4e7f..beb6b95a 100644 --- a/src/main/java/net/mingsoft/config/SwaggerConfig.java +++ b/src/main/java/net/mingsoft/config/SwaggerConfig.java @@ -40,7 +40,7 @@ public class SwaggerConfig { public Docket api() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select() // 自行修改为自己的包路径 - .apis(RequestHandlerSelectors.basePackage("net.mingsoft.*.action.web")).paths(PathSelectors.any()) + .apis(RequestHandlerSelectors.basePackage("net.mingsoft")).paths(PathSelectors.any()) .build(); }