美文网首页
springboot整合swagger2

springboot整合swagger2

作者: 何甜甜在吗 | 来源:发表于2019-11-07 15:30 被阅读0次

发现我们公司蛮喜欢用swagger2的,那就学习一波

swagger2是什么

简单来说,swagger2通过注解可以让API文档可视化、并且在API档上进行测试

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

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

添加swagger2配置类:Swagger2Configuration.java

@Configuration
@EnableSwagger2
public class Swagger2Configuration {
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                //暴露API的包名
                .apis(RequestHandlerSelectors.basePackage("com.h2t.study.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                //页面标题
                .title("SpringBoot整合Swagger2")
                .version("1.0")
                //描述
                .description("API 描述")
                .build();
    }
}

测试控制类:

@RestController
public class TestController {
    @ApiOperation(value = "测试接口",notes = "传入字符串",httpMethod = "GET")
    @ApiImplicitParam(dataType = "string",name = "str",value = "字符串",required = true)
    @GetMapping("/test")
    public Object test(@RequestParam("str") String str) {
        return str;
    }
}

启动程序

访问http://ip:port/swagger-ui.html,访问页面如下:

首页

访问接口:

接口
包含了方法请求类型、APIAPI说明、参数说明。还可以在上面做测试

swagger2常用注解

  • @Api => 修饰整个类,描述Controller的作用
  • @ApiOperation=> 描述一个类的一个方法,或者说一个接口
  • @ApiParam => 单个参数描述
  • @ApiModel => 用对象来接收参数
  • @ApiIgnore => 使用该注解忽略这个API
  • @ApiImplicitParam => 一个请求参数
  • @ApiImplicitParams => 多个请求参数


最后附:项目地址 ,欢迎forkstar

相关文章

网友评论

      本文标题:springboot整合swagger2

      本文链接:https://www.haomeiwen.com/subject/mqkvbctx.html