Knife4j文档地址https://doc.xiaominfo.com/docs/quick-start#spring-boot-3
1.引入依赖
<!-- https://doc.xiaominfo.com/knife4j/documentation/get_start.html-->
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-openapi3-jakarta-spring-boot-starter</artifactId>
<version>4.4.0</version>
</dependency>
2.SwaggerConfig
package com.smileqi.common.config;
import io.swagger.v3.oas.models.ExternalDocumentation;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import org.springdoc.core.models.GroupedOpenApi;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class SwaggerConfig {
@Bean
public OpenAPI smileQiOpenAPI() {
return new OpenAPI()
.info(new Info().title("smileqi-backend")
.description("SMILEQI文档")
.version("v1")
.license(new License().name("Apache 2.0")))
.externalDocs(new ExternalDocumentation()
.description("外部文档")
.url("https://springshop.wiki.github.org/docs"));
}
// 接口较多,可以进行分组,此处进行注释
/* @Bean
public GroupedOpenApi backendGroup() {
return GroupedOpenApi.builder().group("user").displayName("user")
.addOpenApiCustomizer(openApi -> openApi.info(new Info().title("UJCMS 后台 API").version("1.0.0")))
.packagesToScan("com.smileqi.web.controller.user")
.pathsToMatch("/**")
.build();
}*/
}
3.配置文件中配置,详细配置参数可以去文档查看
# springdoc-openapi项目配置,访问地址:http://127.0.0.1:8080/doc.html
springdoc:
swagger-ui:
path: /swagger-ui.html
tags-sorter: alpha
operations-sorter: alpha
api-docs:
path: /v3/api-docs
group-configs:
- group: 'default'
paths-to-match: '/**'
packages-to-scan: com.smileqi.web.controller.user,com.smileqi.web.controller.system
# knife4j的增强配置,不需要增强可以不配
knife4j:
enable: true
setting:
language: zh_cn
4.启动项目,访问http://本地地址端口/doc.html