From f09fa3541ad18c00f30707f592f16d18a0537f77 Mon Sep 17 00:00:00 2001 From: manailin <261030956@qq.com> Date: 星期二, 17 八月 2021 21:54:51 +0800 Subject: [PATCH] [新增]添加监控依赖包 --- springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java | 66 +++++++++++++++++++++++++++++++++ 1 files changed, 66 insertions(+), 0 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java new file mode 100644 index 0000000..a9e5747 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/config/SwaggerConfig.java @@ -0,0 +1,66 @@ +package com.panzhihua.zuul.config; + +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.netflix.zuul.filters.Route; +import org.springframework.cloud.netflix.zuul.filters.RouteLocator; +import org.springframework.context.MessageSource; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import springfox.documentation.builders.PathSelectors; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger.web.SwaggerResource; +import springfox.documentation.swagger.web.SwaggerResourcesProvider; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +import java.text.MessageFormat; +import java.util.*; + +import static java.util.stream.Collectors.collectingAndThen; +import static java.util.stream.Collectors.toCollection; + +/** + * @program: springcloud_k8s_panzhihuazhihuishequ + * @description: swagger + * @author: huang.hongfa weixin hhf9596 qq 959656820 + * @create: 2020-11-26 16:57 + **/ +@Configuration +@EnableSwagger2 +@Primary +public class SwaggerConfig implements SwaggerResourcesProvider { + + //RouteLocator可以根据zuul配置的路由列表获取服务 + private final RouteLocator routeLocator; + + private String[]ids=new String[]{"appletsbackstage","applets","communitybackstage", "shopbackstage","gridbackstage", "gridapp"}; + + public SwaggerConfig(RouteLocator routeLocator) { + this.routeLocator = routeLocator; + } + /** + * Gets a result. + * + * @return a result + */ + @Override + public List<SwaggerResource> get() { + List resources = new ArrayList(); + Arrays.asList(ids).forEach(id->{ + resources.add(swaggerResource(id, MessageFormat.format("/api/{0}/v2/api-docs", id), "1.0")); + }); + return resources; + } + + private SwaggerResource swaggerResource(String name, String location, String version) { + SwaggerResource swaggerResource = new SwaggerResource(); + swaggerResource.setName(name); + swaggerResource.setLocation(location); + swaggerResource.setSwaggerVersion(version); + return swaggerResource; + } + + +} -- Gitblit v1.7.1