一切福田,不離方寸,從心而覓,感無不通。

SpringBoot项目集成Swagger和swagger-bootstrap-ui以及常用注解使用方法

一、前言

 

下面讨论Swagger2及swagger-bootstrap-ui在SpringBoot上的集成

二、SpringBoot项目集成swagger

1. 引入依赖

 

2. 编写配置文件

可对照进行相应的修改

 

3. 启动访问页面

http://127.0.0.1:10086/swagger-ui.html
在这里插入图片描述

三、SpringBoot项目集成swagger-bootstrap-ui

在步骤二的基础上进行如下操作

1.引入依赖

 

2.配置资源处理规则

未配置的情况下,有可能访问报error.9996。
实现WebMvcConfigurer接口,或者WebMvcConfigurationSupport(老版的SpringBoot),实现addResourceHandlers方法,加上如下所示代码即可。

 

或者

 

另外,也可以在启动类上进行实现重写

 

3.启动访问页面

访问http://127.0.0.1:10086/doc.html,相较swagger-ui.html来说,此文档更为清爽。
在这里插入图片描述

四、Swagger常用注解介绍

swagger通过注解生成接口文档,包括接口名、请求方法、参数、返回信息等等。

1.Swagger2Config中相关swagger注解

1.1 @EnableSwagger2 开启Swagger
作用于配置类或启动类
1.2 @EnableSwaggerBootstrapUI 开启SwaggerBootstrapUi增强功能
作用于配置类或启动类,如果不使用增强功能,可不开启。

2.controller中相关swagger注解

2.1 @Api:修饰整个类,描述Controller的作用
value和tags均为说明,可用tags代替value

 

2.2 @ApiOperation() 用于方法;表示一个http请求的操作

 

2.3 @ApiParam 用于方法,参数,字段说明;表示对参数的添加元数据(说明或是否必填等)
适用于单个参数

 

2.4 请求参数注解,可进行组合
@ApiImplicitParams 用于方法,包含多个 @ApiImplicitParam
@ApiImplicitParam 用于方法,表示单独的请求参数
适用于对多个参数进行描述
示例:

 

注意,当同时存在@ApiParam和@ApiImplicitParam时,以@ApiImplicitParam的描述为准。
2.5 @ApiIgnore() 用于类或者方法上,可以不被swagger显示在页面上 ,使用较少。
2.6 响应配置
@ApiResponses
@ApiResponse

 

2.7 @ResponseHeader 响应头设置

 

3.Model中相关swagger注解

3.1 @ApiModel 用于类 ;表示对类进行说明,用于参数用实体类接收。

 

一般value和desc可以省略不写
3.2 @ApiModelProperty 用于方法,字段; 表示对model属性的说明或者数据操作更改

 

value–字段说明
name–重写属性名字
dataType–重写属性类型
required–是否必填
example–举例说明
hidden–隐藏
一般只对value,required进行标示。

以上,即为SpringBoot集成Swagger、swagger-bootstrap-ui以及Swagger常用注解相关介绍。

 

from:https://blog.csdn.net/Yuhei001/article/details/113861976