`

swagger2的分组配置

 
阅读更多
当微服务的服务越来越多swagger2展示的越来越长这时候需要进行分页展示
swagger2头上有下拉框可以groupName进行分组展示

java代码代码:

@Configuration
@EnableSwagger2
public class SwaggerConfig {

@Bean
    public Docket createRestApi() {


        return new Docket(DocumentationType.SWAGGER_2)
        .globalOperationParameters(operationParameters())
        .groupName("第一个接口服务页面")
        .genericModelSubstitutes(DeferredResult.class)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.tan.oauth2.controller"))
                .paths(PathSelectors.any())
                .build();
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title(" createRestApi  Spring Boot中使用Swagger2构建RESTful APIs")
                .description("更多Spring Boot相关文章请关注:http://blog.didispace.com/")
                .termsOfServiceUrl("http://github.com/")
                .contact("程序猿痛苦")
                .version("1.0")
                .build();
    }
    @Bean
    public Docket openRestApi() {
    Predicate<RequestHandler> predicate = new Predicate<RequestHandler>() {
            @Override
            public boolean apply(RequestHandler input) {
//                 Class<?> declaringClass = input.declaringClass();
//                 if (declaringClass == BasicErrorController.class)// 排除
//                     return false;
//                 if(declaringClass.isAnnotationPresent(ApiOperation.class)) // 被注解的类
//                     return true;
//                 if(input.isAnnotatedWith(ResponseBody.class)) // 被注解的方法
//                     return true;
//                 if (input.isAnnotatedWith(ApiOperation.class))//只有添加了ApiOperation注解的method才在API中显示
//                     return true;
                if (input.isAnnotatedWith(ApiOperation.class))//只有添加了ApiOperation注解的method才在API中显示
                return true;
                return false;
            }
        };
    return new Docket(DocumentationType.SWAGGER_2)
    .groupName("第二个接口服务页面")
    .genericModelSubstitutes(DeferredResult.class)
    .apiInfo(openapiInfo())
    .select()
    .apis(RequestHandlerSelectors.basePackage("com.tan.oauth2.controller2"))
//     .apis(predicate)
    .paths(PathSelectors.any())
    .build();
    }
    private ApiInfo openapiInfo() {
    return new ApiInfoBuilder()
    .title("openRestApi Spring Boot中使用Swagger2构建RESTful APIs")
    .description("更多Spring Boot相关文章请关注:http://blog.didispace.com/")
    .termsOfServiceUrl("http://github.com/")
    .contact("程序猿痛苦")
    .version("1.0")
    .build();
    }
   
    public  List<Parameter> operationParameters() {
    //添加head参数start
    ParameterBuilder tokenPar = new ParameterBuilder();
    List<Parameter> pars = new ArrayList<Parameter>();
    tokenPar.name("x-access-token")
    .description("令牌")
    .modelRef(new ModelRef("string"))
    .parameterType("header")
    .required(false)
    .build();
    pars.add(tokenPar.build());
    //添加head参数end
    return pars; 
    }
   
}

pom.xml文件配置

                 <dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>


分享到:
评论

相关推荐

    Spring Boot的自动化配置实现swagger2引入spring boot生成API文档.docx

    swagger-spring-boot-starter该项目主要利用Spring Boot的自动化配置特性来实现快速的将swagger2引入spring boot应用来生成API文档,简化原生使用swagger2的整合代码。 swagger-bootstrap-ui是springfox- swagger的...

    cxf配置swagger2

    cxf配置swagger2

    swagger2.zip

    -- swagger2 依赖开始--&gt; &lt;!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --&gt; &lt;groupId&gt;io.springfox &lt;artifactId&gt;springfox-swagger2 &lt;version&gt;2.9.2 &lt;groupId&gt;io.swagger ...

    springfox-swagger2-2.2.2-API文档-中文版.zip

    赠送jar包:springfox-swagger2-2.2.2.jar; 赠送原API文档:springfox-swagger2-2.2.2-javadoc.jar; 赠送源代码:springfox-swagger2-2.2.2-sources.jar; 赠送Maven依赖信息文件:springfox-swagger2-2.2.2.pom;...

    springfox-swagger2-2.9.2-API文档-中文版.zip

    赠送jar包:springfox-swagger2-2.9.2.jar; 赠送原API文档:springfox-swagger2-2.9.2-javadoc.jar; 赠送源代码:springfox-swagger2-2.9.2-sources.jar; 赠送Maven依赖信息文件:springfox-swagger2-2.9.2.pom;...

    springfox-swagger2-2.7.0-API文档-中文版.zip

    赠送jar包:springfox-swagger2-2.7.0.jar; 赠送原API文档:springfox-swagger2-2.7.0-javadoc.jar; 赠送源代码:springfox-swagger2-2.7.0-sources.jar; 赠送Maven依赖信息文件:springfox-swagger2-2.7.0.pom;...

    swagger2配置以及注解.md

    md文件,swagger2中相当于api了吧写了我tm12个小时,翻着源码写的

    swagger+springboot配置

    swagger+spring-boot配置,swagger配置restful身份验证的Token。swagger:springfox-swagger2+springfox-swagger-ui

    swagger2离线文档生成项目

    用swagger2markup导出swagger2项目的html,pdf的离线文档。解决生成pdf中文乱码以及缺失的问题,支持自定义字体。 修改pom.xml中的 swagger.input属性值中的ip和port 执行mvn clean test完成之后,会在/target/...

    spring boot 项目中swagger-ui配置代码

    &lt;artifactId&gt;springfox-swagger2 &lt;version&gt;2.9.2 &lt;groupId&gt;io.springfox &lt;artifactId&gt;springfox-swagger-ui &lt;version&gt;2.9.2 2、springboot版本 2.04 注释:文件下载,修改注释后可直接使用,希望对...

    swagger2Demo,swagger

    swagger2Demo,swagger,这个是写的一个demo,用于调试接口swagger确实好用,jdk1.8的,欢迎下载,

    mybatis代码自动生成工具含swagger2 配置

    mybatis自动生成工具,带swagger2注释 以及时间格式处理

    SpringBoot2+Swagger2

    SpringBoot2+Swagger2小例子,Springboot2的一些新特性。简单demo,

    配置Swagger.pdf

    WebApi 中配置Swagger,可根据文档,完整在webapi项目中使用Swagger

    springfox-swagger2-3.0.0-API文档-中文版.zip

    赠送jar包:springfox-swagger2-3.0.0.jar; 赠送原API文档:springfox-swagger2-3.0.0-javadoc.jar; 赠送源代码:springfox-swagger2-3.0.0-sources.jar; 赠送Maven依赖信息文件:springfox-swagger2-3.0.0.pom;...

    Swagger的相关配置与注解的使用

    Swagger的相关配置与注解的使用

    SpringMVC 集成 Swagger2

    SpringMVC 集成Swagger2,相关说明可以打开 https://blog.csdn.net/everyday_hzg/article/details/80537902

    SpringBoot整合Swagger2

    简单的SpringBoot整合Swagger2小案例,启动项目后访问http://localhost:8080/swagger-ui.html即可看到在线文档

    springfox-swagger2-2.9.2-API文档-中英对照版.zip

    赠送jar包:springfox-swagger2-2.9.2.jar; 赠送原API文档:springfox-swagger2-2.9.2-javadoc.jar; 赠送源代码:springfox-swagger2-2.9.2-sources.jar; 赠送Maven依赖信息文件:springfox-swagger2-2.9.2.pom;...

    Swagger2Config

    Swagger2Config接口文档配置Java文件.java

Global site tag (gtag.js) - Google Analytics