🏆本文收录于 《Spring Boot从入门到精通》 ,专门攻坚指数提升,2023 年国内最系统+最强(更新中)。
本专栏致力打造最硬核 Spring Boot 从零基础到进阶系列学习内容,🚀均为全网独家首发,打造精品专栏,专栏持续更新中…欢迎大家订阅持续学习。
环境说明:Windows10 + Idea2021.3.2 + Jdk1.8 + SpringBoot 2.3.1.RELEASE
在使用Swagger进行API文档编写时,我们不可避免的会遇到Swagger的一些瓶颈。例如,Swagger的UI界面不太友好,样式单调且难看,交互体验也不是很好。为了解决这些问题,我们可以使用Knife4j对Spring Boot进行整合,从而美化并强化Swagger的使用效果。
本文将介绍如何使用Knife4j对Spring Boot进行整合,并对Knife4j的使用做一些简单介绍。
Knife4j是一个基于Swagger UI的增强版UI框架,可以方便地使用Swagger来管理和测试API文档。而Spring Boot是一个快速开发框架,可以简化开发过程。将Knife4j与Spring Boot整合可以让开发人员更加方便地管理和测试API文档。
本文将分为以下几个部分:
Swagger是一个开源的、用于编写API文档的框架。它可以帮助我们通过Swagger UI对API文档进行在线展示,从而实现API文档的可视化管理。
然而,Swagger在UI界面上的表现并不是很出色。因此,为了增强Swagger的UI交互体验,我们可以使用Knife4j对其进行美化和强化。
Knife4j是Swagger-UI的增强版,它是在Swagger-UI的基础上进行了改进和优化,提供了更加完善的交互体验和更加美观的UI设计。同时,它也提供了更多的扩展功能,例如在线调试和多语言支持等。
下面,我们将介绍如何在Spring Boot中整合Knife4j。
在项目的pom.xml文件中添加如下依赖:
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>${latest.version}</version>
</dependency>
其中,${latest.version}
为当前最新版本号。
在Spring Boot的配置文件application.properties
中添加如下配置:
# Swagger配置
swagger.enabled=true
# Knife4j配置
knife4j.swagger-ui.enabled=true
knife4j.swagger-ui.path=/doc.html
其中,swagger.enabled
表示是否启用Swagger,knife4j.swagger-ui.enabled
表示是否启用Knife4j,knife4j.swagger-ui.path
表示Knife4j的访问路径。
使用Swagger注解编写API文档。
@RestController
@RequestMapping("/api/user")
@Api(tags = {"用户管理"})
public class UserController {
@GetMapping("/{id}")
@ApiOperation(value = "获取用户信息", notes = "根据用户id获取用户信息")
public User getUser(@PathVariable Integer id) {
return userService.getUserById(id);
}
@PutMapping
@ApiOperation(value = "更新用户信息", notes = "根据传入的用户信息更新用户信息")
public User updateUser(@RequestBody User user) {
return userService.updateUser(user);
}
启动Spring Boot应用,访问http://localhost:8080/doc.html
,即可看到Knife4j的UI界面。 示例如下:
在Knife4j的UI界面中,我们可以直接进行API的在线调试。例如,我们可以点击上方的“用户管理”标签,选择“获取用户信息”接口,并输入参数进行测试。 示例如下:
模拟请求发送:
Knife4j支持多种常用的语言,例如中文、英文、日文等。我们可以在配置文件中设置knife4j.swagger-ui.language
属性来配置语言。
knife4j.swagger-ui.language=zh-CN
我们可以使用Postman等工具来测试API接口。
本文介绍了如何使用Knife4j对Spring Boot进行整合,并对Knife4j进行了简单介绍。通过使用Knife4j,我们可以实现API文档的美化和强化,提高API文档的交互体验和可读性。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有