knife4j API文档生成使用流程及详解

这篇具有很好参考价值的文章主要介绍了knife4j API文档生成使用流程及详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

初始化流程

详细注解分析

@Api

@ApiOperation

@ApiModelProperty

@ApiImplicitParam

@ApiImplicitParams

@ApiIgnore


初始化流程

        1:pom文件引入相关依赖

<!--api接口文档生成-->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
            <version>4.0.0</version>
        </dependency>

2:创建配置类

package com.example.springboot_demo.config;

/**
 *
 */
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.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;
@Configuration
@EnableSwagger2WebMvc
public class Knife4jConfig {
    //配置Swagger2的Docket的Bean实例
    @Bean public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                // apiInfo():配置 API 的一些基本信息,比如:文档标题title,文档描述 description,文档版本号version
                .apiInfo(apiInfo())
                // select():生成 API 文档的选择器,用于指定要生成哪些 API 文档
                .select()
                // apis():指定要生成哪个包下的 API 文档
                .apis(RequestHandlerSelectors.basePackage("com.example.springboot_demo.controller"))
                // paths():指定要生成哪个 URL 匹配模式下的 API 文档。这里使用 PathSelectors.any(),表示生成所有的 API 文档。
                .paths(PathSelectors.any()) .build();
    }

    //文档信息配置
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                // 文档标题 .title("微博项目") // 文档描述信息
                .description("微博项目在线API文档")
                // 文档版本号 .version("1.0")
                .build(); }
}

3:默认访问域名+端口+doc.html

详细注解分析

@Api

        类上

        tags:配置模块的名称

@ApiOperation

        方法上

        value:配置业务名称

@ApiModelProperty

        bean类属性上  属性名参数说明

        value:参数中文名称

        required:参数是否必填

        example:配置示例值

@ApiImplicitParam

        方法上

        name:指定参数名称

        value:配置参数名称

        dataType:配置数据类型

        required:是否必填true/false

        example:示例值

@ApiImplicitParams

        value:参数值  示例:

{
    @ApiImplicitParam(name = "id", value = "微博", required=true, 

dataType = "int"),
    @ApiImplicitParam(name = "username", value = "用户名", required=true)
}

@ApiIgnore

        添加在处理请求的方法的参数上,用于表示API文档框架应该忽略此参数

@ApiOperationSupport

        order:排序编号文章来源地址https://www.toymoban.com/news/detail-452058.html

到了这里,关于knife4j API文档生成使用流程及详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Knife4j文档请求异常(更新)

    在SpringBoot项目中,如果是分不同的模块开发。 注解配置 @EnableSwagger2WebMvc 不在启动类上,而是加到了其他模块的注解中,可能会导致这种情况发生。 我的是common一个单独的模块,在common模块中配置了WebMvcConfig。 然后在WebMvcConfig类上面加了注解 @EnableSwagger2WebMvc . 那么,解决方

    2024年01月18日
    浏览(39)
  • Swagger + Knife4j 接口文档的整合

    Swagger 接口文档的整合: 引入依赖(Swagger 或 Knife4j)。 自定义 Swagger 配置类。 定义需要生成接口文档的代码位置(Controller)。 注意:线上环境不要把接口暴露出去!!!可以通过在 SwaggerConfig 配置文件开头加上 @Profile({“dev”, “test”}) 限定配置仅在部分环境开启。 启动

    2024年01月20日
    浏览(51)
  • 全网多种方式解决Knife4j文档请求异常

    今天在本地启动项目后,刷新 Knife4j 接口文档,却报出如下错误: 即 Knife4j文档请求异常 。 报出 Knife4j文档请求异常 错误时,赶紧打开控制台,如下图所示: 控制台提示为 Unchecked runtime.lastError: The message port closed before a response was received. 简单理解就是 端口号关闭 了,于是查

    2023年04月08日
    浏览(71)
  • knife4j实现微服务swagger文档聚合

    在项目开发过程中,接口文档的使用是在所难免的,但是在微服务场景下,多个服务之间的swagger是分散的,虽然swagger提供了微服务的聚合方式,配置过于繁琐,加之swagger本身的功能比较少,而且ui布局也比较蛋痛,此处推荐一款新框架用于增强swagger以及实现微服务接口文档的聚合 kni

    2024年02月13日
    浏览(49)
  • 访问微服务模块的knife4j文档页面,报404

    原因:访问knife4j需要静态资源,在拦截器中配置添加即可。 解决方案: 继承WebMvcConfigurationSupport类,重写addResourceHandlers()方法。

    2024年02月12日
    浏览(31)
  • Spring Cloud Gateway 网关整合 Knife4j 4.3 实现微服务接口文档聚合

    🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请纠正! youlai-mall 开源微服务商城新版本基于 Spring Boot 3 和 Java 17,同时采用 Knife4j 4.3。与以前版本不同的是

    2024年02月05日
    浏览(50)
  • Spring Cloud Gateway + Knife4j 4.3 实现微服务网关聚合接口文档

    🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请纠正! youlai-mall 开源微服务商城新版本基于 Spring Boot 3 和 Java 17,同时采用 Knife4j 4.3。与以前版本不同的是

    2024年02月08日
    浏览(41)
  • Knife4j系列--使用-教程-实例-配置 详细讲解

    Knife4j是基于springboot构建的一个文档生成工具,它可以让开发者为我们的应用生成API文档,目的是可以更加方便的基于API文档进行测试,生成的文档还可以导出,然后给到前端开发团队,前端开发团队可以基于API接口写具体的调用。 Knife4j 功能强大,易于操作。 Knife4j 的UI界面

    2024年02月10日
    浏览(34)
  • 【SpringBoot】Swagger和knife4j的使用

    springboot笔记集合: springboot笔记合计 没用的废话理论不多说,会用就完了 Swagger 是一种开源的API描述语言,就是描述API的, 同时Swagger还提供了一组工具(也叫Swagger),可以帮助开发人员自动生成API文档、测试API并与其他系统集成。 Knife4j是基于Swagge语言延伸的另一组api工具,简

    2024年02月10日
    浏览(38)
  • Spring Cloud Gateway集成聚合型Spring Boot API发布组件knife4j,增强Swagger

    大家都知道,在前后端分离开发的时代,前后端接口对接是一项必不可少的工作。 可是, 作 为后端开发,怎么和前端更好的配合,才能让自己不心累、脑累 ,直接扔给前端一个后端开放api接口文档或者页面,让前端不用看着难受,也不用前端老问你,来愉快的合作呢? 原

    2024年04月22日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包