• swagger在zuul网关中的集成


    1.导包

    <!--引入swagger支持-->
                <dependency>
                    <groupId>io.springfox</groupId>
                    <artifactId>springfox-swagger2</artifactId>
                    <version>2.9.2</version>
                </dependency>
                <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
                <dependency>
                    <groupId>io.springfox</groupId>
                    <artifactId>springfox-swagger-ui</artifactId>
                    <version>2.9.2</version>
                </dependency>

    2.写入配置类

    需要两个配置类

    DocumentationConfig

    package cn.jiedada.hrm.config;
    
    import org.springframework.context.annotation.Primary;
    import org.springframework.stereotype.Component;
    import springfox.documentation.swagger.web.SwaggerResource;
    import springfox.documentation.swagger.web.SwaggerResourcesProvider;
    
    import java.util.ArrayList;
    import java.util.List;
    
    @Component
    @Primary
    public class DocumentationConfig implements SwaggerResourcesProvider {
        @Override
        public List<SwaggerResource> get() {
            List resources = new ArrayList<>();
            //添加所有的微服务的文档资源
            /**
             * 参数:
             * name:自定义的服务的名字
             * location:指定是微服务的路径  在我们的配置文件中的zuul中的前缀和服务的别名
             * /前缀/服务名/v2/api-docs
             */
            resources.add(swaggerResource("系统管理", "/hrm/systemmanage/v2/api-docs", "2.0"));
            resources.add(swaggerResource("人力支援", "/hrm/hrmmm/v2/api-docs", "2.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;
        }
    }

    SwaggerConfig

    package cn.jiedada.hrm.config;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import springfox.documentation.builders.ApiInfoBuilder;
    import springfox.documentation.service.ApiInfo;
    import springfox.documentation.service.Contact;
    import springfox.documentation.spi.DocumentationType;
    import springfox.documentation.spring.web.plugins.Docket;
    import springfox.documentation.swagger2.annotations.EnableSwagger2;
    
    @Configuration
    @EnableSwagger2
    public class SwaggerConfig {
    
        @Bean
        public Docket createRestApi() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .apiInfo(apiInfo());
        }
    
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder()
                    .title("源码人力资源综合平台")
                    .description("源码人力资源综合平台接口文档说明")
                    .termsOfServiceUrl("http://localhost:1020")
                    .contact(new Contact("jiedada", "", "jiedada@jiedada.cn"))
                    .version("1.0")
                    .build();
        }
    }

    3.访问方式

    localhost:1020/swagger-ui.html

  • 相关阅读:
    GeoServer 发布矢量切片服务
    GeoServer 服务 端口修改
    Python 启动 FastAPI 报错 Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试
    conda和pip的常用语句
    ArcGIS Pro 图层数据批量执行多部件转单部件
    ArcGIS Pro 中文(简体)语言包-指定路径为空
    2020 Ateneo de Manila University DISCS PrO HS Division
    N皇后问题-汇编解法
    HDU
    HDU
  • 原文地址:https://www.cnblogs.com/xiaoruirui/p/11962572.html
Copyright © 2020-2023  润新知