SpringBoot中基于knife4j生成接口文档

一、Knife4j介绍

Knife4j是一个基于Swagger构建的开源Java API文档工具,它为Java开发者提供了生成、展示和调试API文档的功能。它提供了一套美观且功能强大的界面,可以自动生成API文档,并支持接口分组、参数设置、请求示例、响应模型配置等高级功能。

不同版本的SpringBoot项目需要不同版本的依赖,可在官方网址https://doc.xiaominfo.com/查看

在这里插入图片描述

二、在pom.xml中导入依赖

// SpringBoot2.1.8可使用如下版本
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <version>2.0.4</version>
</dependency>

三、创建Swagger配置依赖,代码如下

//com.ztm.config.Knife4jConfiguration
// 如果后端接口分为用户端和管理端,就在配置类中创建Docket1()和Docket2()

@Configuration
@EnableSwagger2  //根据依赖的版本不同可能是@EnableSwagger2或者@EnableSwagger2WebMvc
public class Knife4jConfiguration {
    @Bean
    public Docket Docket() {
        ApiInfo apiInfo = new ApiInfoBuilder()
                .title("SpringBoot2-Demo")
                .version("2.0")
                .description("SpringBoot2-Demo")
                .build();
        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .groupName("xxx端接口")   //分组名称
                .apiInfo(apiInfo)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.ztm.controller")) //这里指定Controller扫描包路径
                .paths(PathSelectors.any())
                .build();
        return docket;
    }
}

四、创建WebMvcConfiguration配置类,设置Knife4j生成的接口文档静态资源映射。

// com.ztm.config.WebMvcConfiguration
@Configuration
public class WebMvcConfiguration extends WebMvcConfigurationSupport {
    /**
     * 设置Knife4j接口文档静态资源映射
     * @param registry
     */
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
    }
}

五、在controller接口中添加相应的注解描述

  1. @Api:类上注解,控制整个类生成接口信息的内容。属性tags:类的名称
  2. @ApiOperation:方法上注解,描述方法的相关消息。属性value:描述方法作用

示例如下:
在这里插入图片描述

六、启动项目,访问

http://localhost:8080/doc.html

在这里插入图片描述

  • 15
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一种便捷的框架,它可以快速地搭建Java应用程序,并且它对于集成其他组件和框架也十分方便。而Knife4j则是一种集成度很高的API文档工具,它可以将接口文档在Swagger的基础上大幅度优化。在Spring Boot使用Knife4j整合API文档也非常简单。 首先,我们需要在Spring Boot的项目引入Knife4j依赖,可以在pom.xml文件加入以下代码: ``` <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>2.2.7</version> </dependency> ``` 这样Knife4j就会被自动集成到Spring Boot的应用。 接下来,我们需要在Controller方法上增加注解,并且配置一些信息才能生成接口文档。 ``` @GetMapping("/hello") @ApiOperation(value = "示例API接口", notes = "这是一个示例API接口") @ApiImplicitParams({ @ApiImplicitParam(name = "name", value = "用户名", required = true, dataType = "String", paramType = "header") }) public String hello(@RequestHeader String name){ return "Hello, " + name + "!"; } ``` 其@GetMapping是Spring Boot的注解,用于标记这是一个GET请求。@ApiOperation和@ApiImplicitParams则是Knife4j的注解,它们分别用于注释方法和方法参数的信息。 最后,在启动Spring Boot应用后,访问http://localhost:8080/doc.html 就可以看到生成接口文档了。这个文档列表会列出所有接口的URL、HTTP方法、请求参数、响应结果等信息,非常直观和有用。通过Knife4j可以使API文档生成更加高效、直观,方便开发者理解和调用接口。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值