首页 > 其他分享 >SpringBoot集成knife4j接口文档

SpringBoot集成knife4j接口文档

时间:2024-09-08 14:35:26浏览次数:5  
标签:knife4j 实体类 SpringBoot 接口 controller apiInfo 文档 Docket

0. 导入maven依赖

<dependency>
	<groupId>com.github.xiaoymin</groupId>
	<artifactId>knife4j-spring-boot-starter</artifactId>
</dependency>

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>

1. 创建knife4j配置类

@Configuration
public class Knife4jConfiguration {

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("SpringBoot整合Knife4j-api接口文档")
                .description("本文档描述了SpringBoot如何整合Knife4j")
                .version("1.0")
                .build();
    }

    @Bean
    public Docket adminApiConfig() {
        Docket adminConfig = new Docket(DocumentationType.SWAGGER_2)
                .groupName("后台管理接口")
                .apiInfo(apiInfo())
                .select()
                //只显示admin路径下的页面
                .apis(RequestHandlerSelectors.basePackage("com.sky.controller"))
                .paths(PathSelectors.regex("/admin/.*"))
                .build();
        return adminConfig;
    }

    @Bean
    public Docket userApiConfig() {
        Docket adminConfig = new Docket(DocumentationType.SWAGGER_2)
                .groupName("用户端管理接口")
                .apiInfo(apiInfo())
                .select()
                //只显示user路径下的页面
                .apis(RequestHandlerSelectors.basePackage("com.sky.controller"))
                .paths(PathSelectors.regex("/user/.*"))
                .build();
        return adminConfig;
    }

}

2. 使用knife4j

常用注解:

注解 使用
@ApiModel("实体类描述") 在实体类使用
@ApiModelProperty("实体类属性描述") 在实体类属性使用
@Api(tags = "controller描述") 在controller使用
@ApiOperation(value = "api操作描述") 在controller内请求方法使用

3. 效果

后台管理接口:
image

用户端接口:
image

标签:knife4j,实体类,SpringBoot,接口,controller,apiInfo,文档,Docket
From: https://www.cnblogs.com/special114/p/18402825

相关文章