swagger2的基本使用
这里主要讲解在spring boot中使用swagger2 生成接口文档
首先导入maven依赖
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
然后新建一个配置类 用于配置一些swagger2的文档基本信息和接口扫描路径
/** * Swagger2 配置类 * 在与spring boot 集成时,放在与application.java 同级的目录下 * 通过@Configuration注解,让spring来加载该配置 */ @Configuration public class Swagger2 { /** * 创建API应用 * appinfo()增加API相关信息 * 通过select()函数返回一个ApiSelectorBuilder实例,用来控制那些接口暴露给Swagger来展现 * 本例采用置顶扫描的包路径来定义指定要建立API的目录 * * @return */ @Bean public Docket createRestApi() { Docket docket = new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.shuke.chat")) .paths(PathSelectors.any()).build(); return docket; } /** * 创建改API的基本信息(这些基本信息会展示在文档页面中) * 访问地址: http://项目实际地址/swagger-ui.html * @return */ public ApiInfo apiInfo() { return new ApiInfoBuilder()
// 设置页面标题
.title("使用swagger2构建小程序后端api接口文档")
// 设置联系人
.contact(new Contact("IT人故事会", "http://idig8.com", "公众号:编程坑太多"))
// 描述
.description("欢迎访问接口文档")
// 定义版本号
.version("1.0").build();
} }
然后在启动类上 加@EableSwagger2
默认swagger2的界面地址是:项目的根路径/swagger-ui.html
进入这个界面以后就会显示当前项目有哪些接口 点击接口以后就会显示当前接口有哪些方法 还可以在线测试 功能非常强大 可以替代postman了
具体操作非常简单 看到了就会
接下来将swagger2的核心 就是使用注解给接口 和每个方法加说明
- @Api:修饰整个类,描述Controller的作用
- @ApiOperation:描述一个类的一个方法,或者说一个接口
- @ApiParam:单个参数描述
- @ApiModel:用对象来接收参数
- @ApiProperty:用对象接收参数时,描述对象的一个字段
- @ApiResponse:HTTP响应其中1个描述
- @ApiResponses:HTTP响应整体描述
- @ApiIgnore:使用该注解忽略这个API
- @ApiError :发生错误返回的信息
- @ApiImplicitParam:一个请求参数
- @ApiImplicitParams:多个请求参数