SpringBoot2.2.6 整合 Swagger2文档 使用BootstrapUI页面

第一步、引入pom


		2.9.2
        2.9.2
        1.8.5
	
	
        
            io.springfox
            springfox-swagger-ui
            ${swagger-ui.version}
        
        
        
            io.springfox
            springfox-swagger2
            ${swagger2.version}
        
        
        
            com.github.xiaoymin
            swagger-bootstrap-ui
            ${swagger-bootstrap-ui.version}
        

swagger-bootstrap-ui是springfox-swagger的增强UI实现,为Java开发者在使用Swagger的时候,能拥有一份简洁、强大的接口文档体验

2,加入SwaggerConfig配置类

package com.cibn.boss.order.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
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;

/**
 * SwaggerConfig
 * @desc: Swagger配置
 * @version:
 * @createTime: 2020/8/06 14:36
 * @author:
 */
@Configuration
public class SwaggerConfig {

    @Bean
    public Docket createH5RestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.any())
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("海外boss api文档")
                .description("restful 风格接口")
                .version("1.0")
                .build();
    }

}

3,启动类上加上@EnableSwagger2,以及@EnableSwaggerBootstrapUI注解

package com.cibn.boss.order;

import com.github.xiaoymin.swaggerbootstrapui.annotations.EnableSwaggerBootstrapUI;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@EnableSwaggerBootstrapUI
@EnableSwagger2
@SpringBootApplication
@MapperScan(value = "com.cibn.boss.order.dao")
public class BossAppcation {
    public static void main(String[] args)
    {
        SpringApplication.run(BossAppcation.class, args);

    }
}

访问页面: http://ip:端口号/项目名/doc.html

SpringBoot2.2.6 整合 Swagger2文档 使用BootstrapUI页面_第1张图片

Swagger 常用注解
1.@Api
用于类,表示标识这个类是swagger的资源。属性如下:

tags 表示说明,tags如果有多个值,会生成多个列表
value 表示说明,可以使用tags替代
2.@ApiOperation
用于方法,表示一个http请求的操作。属性如下:

value 用于方法描述
notes 用于提示内容
tags 用于API文档控制的标记列表,视情况而用,可以进行独立分组
3.@ApiParam
用于方法、参数、字段说明;表示对参数的添加元数据。

name 参数名
value 参数说明
required 是否必填
4.@ApiModel
用于类,表示对类进行说明,用于参数用实体类接受。

value 对象名
description 描述
5.@ApiModelProperty
用于方法、字段,表示对model属性的说明或者数据操作更改。

value 字段说明
name 重写属性名
dataType 重写属性数据类型
required 是否必填
example 举例说明
hidden 隐藏
6.@ApiIgnore
用于类、方法、方法参数,表示这个方法或者类被忽略,不在swagger-ui.html上显示。

7.@ApiImplicitParam
用于方法,表示单独的请求参数。

name 参数名
value 参数说明
dataType 数据类型
paramType 参数类型
example 举例说明
8.@ApiImplicitParams
用于方法,包含多个 @ApiImplicitParam。

9.@ApiResponses @ApiResponse
用于类或者方法,描述操作的可能响应。

code 响应的HTTP状态代码
message 响应附带的可读消息
10.@ResponseHeader
用于方法,响应头设置。

name 响应头名称
description 头描述
response 默认响应类 void
responseContainer 参考ApiOperation中配置

你可能感兴趣的:(spring-boot)