springboot 整合 swaggerui 生成在线接口文档

本贴最后更新于 1602 天前,其中的信息可能已经渤澥桑田

可能有些小伙伴在工作中见到项目组在使用swaggerui在线接口文档,跟传统的其他接口文档不一样,今天就来说一说如何使用这个插件来生成接口文档。
swaggerui工具介绍:https://swagger.io/tools/swagger-ui/

1、本案例基于springboot项目演示,springboot集成swaggerui,dependency依赖如下:

       <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>

2、编写swagger的配置类

package com.lemon.api.runner.swagger;

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.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class SwaggerConfiguration {
	@Bean
	public Docket api(){
		return new Docket(DocumentationType.SWAGGER_2)
				.apiInfo(buildApiInfo())
				.select()
				//指定此package下的接口显示在接口文档中
				.apis(RequestHandlerSelectors.basePackage("com.lemon.api.runner.api"))
				.paths(PathSelectors.any())
				.build();
	}

	private ApiInfo buildApiInfo() {
		return new ApiInfoBuilder().
				//文档标题
				title("swagger接口文档")
				//联系人
				.contact(new Contact("nick",null, "304034313@qq.com"))
				//文档描述
				.description("测试平台接口文档")
				//版本
				.version("1.0")
				.build();
	}
}

3.启动时扫描到此配置:
image.png
4.启动springboot,访问:http://ip:port/lemon/swagger-ui.html
即可看到swaggerui在线接口文档。查看接口:
image.png
问题:以UserController下的注册接口为例,接口重复?
image.png
解决:在接口上使用@ApiOperation:注解来给API增加方法说明。
image.png
设置后效果:
image.png
5如何测试接口
image.png
image.png
image.png
6.如何设置参数必填
image.png
image.png

由此可见,swaggerui就是一个生成在线接口文档的工具,接口文档的生成是由开发人员来设置的,测试人员简单了解下如何在此在线平台上完成测试即可,以上通过一个简单案例带大家了解了swaggerui的简单用法,更多详细的用法请参考官方文档。

回帖
请输入回帖内容 ...