zoukankan      html  css  js  c++  java
  • spring boot 基础篇 -- 集成接口测试Swagger

      一、在pom.xml加入Swagger jar包引入

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

      二、配置Swagger 配置类

    package bp.config;
    
    import static com.google.common.base.Predicates.and;
    import static com.google.common.base.Predicates.containsPattern;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    
    import com.google.common.base.Predicate;
    
    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;
    import springfox.documentation.swagger2.annotations.EnableSwagger2;
    
    
    @Configuration
    @EnableSwagger2
    public class SwaggerConfig {
        
        @Bean
        public Docket createRestApi() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .apiInfo(apiInfo())
                    .select()
                    .apis(RequestHandlerSelectors.basePackage("bp.controller"))
                    .paths(paths())
                    .build();
        }
    
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder()
                    .title("城市营商SAAS系统接口API")
                    .description("API接口规则:必须要以/api开头")
                    .version("1.0")
                    .build();
        }
    
        @SuppressWarnings("unchecked")
        private Predicate<String> paths(){
            return and(containsPattern(".*api.*"));
        }
    
    }

      三、controller类

    @RestController
    @RequestMapping(value="/api",method={RequestMethod.GET})
    @Api("行政事项页面接口")
    public class AdministrativeMattersController extends BaseController {
        
        
        
        
        @ApiOperation(value = "描述", httpMethod = "GET", notes = "描述信息")
        @RequestMapping(value = "接口访问路径", method = RequestMethod.GET)
        public BaseModel getAdministrativeByDepartment(@ApiParam(required=true, name="city", value="参数说明") @RequestParam(name = "city", required=true) String city){
            Map<String,Object> result = new HashMap<String,Object>();
             retrun result;
            }
            
        }

    四、启动项目 访问 http://ip:端口/swagger-ui.html 即可成功进行swagger接口测试。

  • 相关阅读:
    Vue blur事件优先级高于click事件
    常用的正则表达式
    vue-socket.io 3.0.9 的最新版本不能用
    nvm
    Webpack4:Chunk.entrypoints: Use Chunks.groupsIterable and filter by instanceof Entrypoint instead
    Echart 挪动滑块时,前端根据起始日期重新计算数据,造成了数据渲染错误
    Ant Design table 排序 ,点击头部只有升序和降序
    雷达图 点击事件
    修改远程仓库地址
    vue.cli发布不同的环境
  • 原文地址:https://www.cnblogs.com/bestxyl/p/7426807.html
Copyright © 2011-2022 走看看