【Spring Boot】swagger简介_springboot整合swagger
1、swagger简介
1.1定义
- Swagger 2(也称为OpenAPI 2.0)或Swagger 3(也称为OpenAPI 3.0)是用于描述和定义RESTful API的规范和工具集。
1.2作用
-
自动生成API文档:通过扫描代码中的注解,Swagger可以自动生成详细的API文档,包括每个API的URL、请求方法、请求和响应参数、数据类型等。
-
提供测试界面:Swagger UI是一个嵌入式的Web应用程序,它提供了一个可交互的界面来测试API。开发者可以直接在Swagger UI中尝试API调用,查看请求和响应数据。
-
支持多种语言和框架:Swagger不仅支持Spring Boot,还支持许多其他的编程语言和框架,如Java、Python、Ruby、Node.js等。
1.3优点
- 减少文档编写时间:通过自动生成API文档,可以减少手动编写文档的时间和努力。
- 保持文档与代码同步:由于文档是基于代码中的注解生成的,因此当代码发生变化时,文档也会自动更新。
- 提供交互式测试界面:Swagger UI提供了一个可交互的界面来测试API,这有助于开发者验证API的正确性和功能。
- 支持多种客户端:Swagger不仅支持Web浏览器作为客户端,还支持其他类型的客户端,如命令行工具、Postman等。
2、springboot整合swagger
1、添加依赖
在pom.xml
文件中添加Swagger的依赖(这里以Swagger 2为例):
<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
创建一个配置类来配置Swagger。例如,创建一个名为SwaggerConfig
的类,并添加以下代码:
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;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("com.example.yourapp.controller")) // 你的Controller所在的包
.paths(PathSelectors.any())
.build()
.apiInfo(apiInfo());
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("你的API文档标题")
.description("你的API文档描述")
.version("1.0")
.build();
}
}
3、使用Swagger注解
在Controller和API方法上使用Swagger的注解来提供更多关于API的信息。例如:
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/api/v1")
@Api(tags = "用户相关API")
public class UserController {
@GetMapping("/users")
@ApiOperation("获取所有用户")
public List<User> getAllUsers() {
// ... 你的代码 ...
}
}
4、访问Swagger UI
- 启动Spring Boot应用
- 然后访问
http://localhost:8080/swagger-ui.html
(如果你的应用没有运行在8080端口,请替换为实际的端口号)
原文地址:https://blog.csdn.net/wosixiaokeai/article/details/140103764
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!