Knife4j 是一个基于 Swagger 的增强解决方案,它为 Java 开发者提供了一个更美观、更强大的 API 文档工具。Knife4j 继承了 Swagger 的特性,并且在此基础上进行了优化和增强,使得生成的 API 文档更加符合国内开发者的使用习惯。
Knife4j 的主要特点
- 界面优化:Knife4j 提供了更加现代和美观的界面设计,使得 API 文档更加易读和易用。
- 功能增强:除了基本的 API 文档展示,Knife4j 还提供了诸如离线文档、接口排序、访问控制等增强功能。
- 扩展性:Knife4j 支持自定义扩展,可以根据项目需求进行个性化配置。
- 兼容性:Knife4j 兼容 Swagger 2.x 和 OpenAPI 3.0,可以无缝集成到现有的 Swagger 项目中。
使用 Knife4j 生成接口文档的步骤
-
添加依赖:在 Maven 或 Gradle 项目中添加 Knife4j 的依赖。
Maven 依赖示例:
<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>2.0.9</version> </dependency>
Gradle 依赖示例:
implementation 'com.github.xiaoymin:knife4j-spring-boot-starter:2.0.9'
-
配置 Swagger:在 Spring Boot 项目中配置 Swagger,启用 Knife4j。
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.Document