zoukankan      html  css  js  c++  java
  • springboot 整合swagger-ui

     一、添加maven依赖

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

    二、添加swagger配置类

    package com.system;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.web.context.request.async.DeferredResult;
    import springfox.documentation.builders.ApiInfoBuilder;
    import springfox.documentation.builders.PathSelectors;
    import springfox.documentation.builders.RequestHandlerSelectors;
    import springfox.documentation.service.ApiInfo;
    import springfox.documentation.spi.DocumentationType;
    import springfox.documentation.spring.web.plugins.Docket;
    
    @Configuration
    public class Swagger2Config {
        @Bean
        public Docket createRestApi() {
            return new Docket(DocumentationType.SWAGGER_2) //
                    .genericModelSubstitutes(DeferredResult.class) //
                    .useDefaultResponseMessages(false) //
                    .forCodeGeneration(true) //
                    .apiInfo(apiInfo()) //
                    .pathMapping("/")//
                    .select() //
                    .apis(RequestHandlerSelectors.basePackage("com.controller")) //这边放你们的controller的包的位置
                    .paths(PathSelectors.any()) //
                    .build(); //
        }
    
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder() //
                    .title("swagger构建api文档") //
                    .description("restfun风格") //
                    .termsOfServiceUrl("https://github.com/springfox/springfox-demos") //
                    .version("1.0") //
                    .build();
        }
    }

    三、springboot添加注解

    四、一个测试用例

    @ApiOperation(value = "用户注册", notes = "用户注册", httpMethod = "POST")
        @ApiImplicitParams({
                @ApiImplicitParam(name = "name", value = "用户昵称", required = true, dataType = "string",paramType = "query"),
                @ApiImplicitParam(name = "account", value = "账号", required = true, dataType = "string",paramType = "query"),
                @ApiImplicitParam(name = "pwd", value = "密码", required = true, dataType = "string",paramType = "query"),
                @ApiImplicitParam(name = "rePwd", value = "确认密码", required = true, dataType = "string",paramType = "query")
        })

    一个注册的controller上面添加以上配置就可以了

    swagger页面的访问路径   ip:port/swagger-ui.html

    里面的要填的参数,上面配置的name会自动映射到controller里面名称相同的参数。

  • 相关阅读:
    iOS 获取内外网ip
    iOS 查看层级关系以及调用堆栈
    CoreML Use of undeclared type & Use of unresolved identifier
    AFN的实时网络监控 但是block连续调用了两次
    iOS 11 偏好设置(NSUserDefaults)无效了?
    iOS 11 UIScrollView的新特性(automaticallyAdjustsScrollViewInsets 不起作用了)
    Xcode9~iOS11初体验 无线调试
    Hook~iOS用钩子实现代码注入(埋点方案)
    tomcat启动时端口占用的问题怎么解决
    Memcached在Linux环境下的使用详解http://blog.51cto.com/soysauce93/1737161
  • 原文地址:https://www.cnblogs.com/chenmz1995/p/10372854.html
Copyright © 2011-2022 走看看