springBoot整合Swagger

点击上方 Java老铁,并选择 设为星标

优质文章和资料会及时送达

Swagger介绍

OpenAPI规范(OpenAPI Specification 简称OAS)是Linux基金会的一个项目,试图通过定义一种用来描述API格 式或API定义的语言,来规范RESTful服务开发过程,目前版本是V3.0,并且已经发布并开源在github上。(https://github.com/OAI/OpenAPI-Specification) Swagger是全球最大的OpenAPI规范(OAS)API开发工具框架,支持从设计和文档到测试和部署的整个API生命周 期的开发。(https://swagger.io/) Spring Boot 可以集成Swagger,生成Swagger接口,Spring Boot是Java领域的神器,它是Spring项目下快速构建 项目的框架。

Swagger常用注解

在Java类中添加Swagger的注解即可生成Swagger接口,常用Swagger注解如下: 

@Api:修饰整个类,描述Controller的作用 

@ApiOperation:描述一个类的一个方法,或者说一个接口 @ApiParam:单个参数描述 

@ApiModel:用对象来接收参数 

@ApiModelProperty:用对象接收参数时,描述对 象的一个字段 @ApiResponse:HTTP响应其中1个描述 

@ApiResponses:HTTP响应整体描述

@ApiIgnore:使用 该注解忽略这个API

@ApiError :发生错误返回的信息 

@ApiImplicitParam:一个请求参数 

@ApiImplicitParams:多个请求参数

@ApiImplicitParam属性:

springBoot整合Swagger_第1张图片

配置:

@Configuration
@EnableSwagger2
public class SwaggerConfig {


    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())//调用apiInfo方法,创建一个ApiInfo实例,里面是展示在文档页面信息内容
                .select()
                //控制暴露出去的路径下的实例
                //如果某个接口不想暴露,可以使用以下注解
                //@ApiIgnore 这样,该接口就不会暴露在 swagger2 的页面下
                .apis(RequestHandlerSelectors.any())
                .paths(PathSelectors.any())
                .build();
    }
    //构建 api文档的详细信息函数
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                //页面标题
                .title("Spring Boot Swagger2 构建RESTful API")
                //条款地址
                .termsOfServiceUrl("http://despairyoke.github.io/")
                .version("1.0")
                //描述
                .description("API 描述")
                .build();
    }
}

controller:

@Api(value = "问候页面")
@RestController
public class HelloController {


    @ApiOperation(value="hello方法")
    @GetMapping("/hello")
    public Object hello(@RequestParam String name){
        return "12"+name;
    }
}

启动项目:http://localhost:8080/swagger-ui.html

springBoot整合Swagger_第2张图片

关注我

获取更多
Java干货

原创文章

视频资料

技术交流群

目前100000+人已关注加入

                                    

                                    

你可能感兴趣的:(springBoot整合Swagger)