swagger knife4j-spring-boot-starter
时间: 2025-03-27 07:15:03 浏览: 48
### 如何在Spring Boot项目中使用knife4j-spring-boot-starter实现Swagger接口文档
#### 1. 添加依赖项
为了使Spring Boot应用程序能够利用knife4j的功能,需先将其对应的starter加入项目的`pom.xml`文件之中:
```xml
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>{latest_version}</version>
</dependency>
```
这里的版本号应当替换为最新的稳定版。
#### 2. 配置应用属性
接着,在application.properties或application.yml内添加必要的配置选项以激活并定制化API文档的行为。例如设置是否启用基本认证以及生产模式下的访问权限等[^3]。
对于YAML格式的应用程序配置如下所示:
```yaml
server:
port: 8080
spring:
mvc:
pathmatch:
matching-strategy: ant_path_matcher
knife4j:
enable: true
basic:
enable: true
production: false
```
上述配置开启了基础的身份验证机制,并允许开发者在开发环境中查看API详情页面;而在生产环境下则会隐藏这些敏感信息除非特别授权。
#### 3. 创建SwaggerConfig类 (可选)
虽然不是强制性的步骤,但是创建一个专门用于配置Swagger行为的Java类可以提供更多的灵活性和控制力。下面是一个简单的例子说明如何做到这一点:
```java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
@Configuration
public class SwaggerConfig {
@Bean
public Docket createRestApi() {
return new Docket(DocumentationType.OAS_30)
.apiInfo(new ApiInfoBuilder()
.title("My Application API Documentation")
.description("This document describes the RESTful APIs of my application.")
.version("1.0.0")
.contact(new Contact("Author Name", "http://example.com", "[email protected]"))
.build())
.select()
// .apis(RequestHandlerSelectors.basePackage("com.example.controller")) // Uncomment this line to specify base package for scanning controllers.
.paths(PathSelectors.any())
.build();
}
}
```
这段代码定义了一个名为createRestApi的方法返回Docket对象实例,该方法负责构建整个API文档结构及其元数据描述。注意这里还可以指定要扫描控制器所在的包路径以便更精确地定位目标资源[^1]。
完成以上操作之后重启服务即可通过浏览器访问`/doc.html`端点来浏览美化后的API文档界面了[^2]。
阅读全文
相关推荐


















