【Spring Boot】SpringBoot 优雅整合Swagger Api 自动生成文档

这篇具有很好参考价值的文章主要介绍了【Spring Boot】SpringBoot 优雅整合Swagger Api 自动生成文档。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

  • Swagger 是一套 RESTful API 文档生成工具,可以方便地生成 API 文档并提供 API 调试页面。
  • 而 Spring Boot 是一款非常优秀的 Java Web 开发框架,它可以非常方便地构建 Web 应用程序。
  • 在本文中,我们将介绍如何使用 Swagger 以及如何在 Spring Boot 中整合 Swagger

一、添加 Swagger 依赖

首先,在 pom.xml 文件中添加 Swagger 的依赖:

<!-- swagger2 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.9.2</version>
</dependency>

<!-- swagger-ui -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.9.2</version>
</dependency>

二、创建接口类

在 Spring Boot 项目中创建一个 Controller,并在该 Controller 中添加一个简单的接口。

例如,我们创建一个名为 HelloController 的 Controller 类,并添加一个 /hello 接口,返回一个字符串 “hello world”。

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello() {
        return "hello world";
    }
}

三、添加 Swagger 配置类

接下来,我们需要创建一个 Swagger 配置类,用于配置 Swagger 文档的生成方式。在项目中创建一个名为 SwaggerConfig 的类,添加如下代码:

@Configuration
@EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("Spring Boot 中使用 Swagger2 构建 RESTful APIs")
                .description("更多 Spring Boot 相关文章请关注:https://www.example.com/")
                .termsOfServiceUrl("https://www.example.com/")
                .contact(new Contact("binjie09", "", "binjie09@example.com"))
                .version("1.0")
                .build();
    }
}

其中,createRestApi() 方法用于创建一个 Docket 对象,该对象包含了 Swagger 文档的生成方式设置。在上述代码中,我们设置了文档的基本信息,以及包扫描路径等。

四、访问 Swagger 页面

最后,启动 Spring Boot 应用程序,访问 http://localhost:8080/swagger-ui.html 即可看到 Swagger 文档页面。
在页面左侧,我们可以看到程序中创建的 API 接口,点击接口后可以看到该接口的详细信息。

在 Swagger 页面上,我们还可以进行接口测试和调试。在 /hello 接口上,点击 “Try it out” 按钮,填写请求参数后点击 “Execute” 按钮,即可发送请求并获取响应。

通过整合 Swagger,我们可以在 Spring Boot 应用程序中快速生成 RESTful API 文档,并且直接在页面上进行调试和测试,非常方便。

五、整合一个更友好的UI接口文档 Knife4j

Knife4j 是一款基于 Swagger 的 API 文档生成工具,它提供了非常友好的 UI 界面,可以方便地生成和浏览 API 文档。
在本文中,我们将介绍如何在 Spring Boot 中整合 Knife4j。

1、添加 Knife4j 依赖

首先,在 pom.xml 文件中添加 Knife4j 的依赖:

<!-- knife4j -->
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-openapi2-spring-boot-starter</artifactId>
    <version>4.1.0</version>
</dependency>

2、添加 Knife4j 配置类

接下来,我们需要创建一个 Knife4j 配置类,用于配置 Knife4j 文档的生成方式。在项目中创建一个名为 Knife4jConfig 的类,添加如下代码:

@Configuration
@EnableKnife4j
public class Knife4jConfig {

    @Bean
    public Docket docket() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.example.demo.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("Spring Boot 中使用 Knife4j 构建 RESTful APIs")
                .description("更多 Spring Boot 相关文章请关注:https://www.example.com/")
                .termsOfServiceUrl("https://www.example.com/")
                .contact(new Contact("binjie09", "", "binjie09@example.com"))
                .version("1.0")
                .build();
    }
}

在上述代码中,我们使用了 @EnableKnife4j 注解开启了 Knife4j 的自动配置。在 docket() 方法中,我们设置了文档的基本信息、包扫描路径等。需要注意的是,在 Knife4j 中,我们需要使用 Swagger 2.x 版本的 API

3、访问 Knife4j 页面

【Spring Boot】SpringBoot 优雅整合Swagger Api 自动生成文档

最后,启动 Spring Boot 应用程序,访问 http://localhost:8080/doc.html 即可看到 Knife4j 文档页面。与 Swagger 相比,Knife4j 提供了更加友好的 UI 界面,并且可以直接在页面上进行接口测试和调试,非常方便。

总结

通过整合 Knife4j,我们可以在 Spring Boot 应用程序中快速生成 RESTful API 文档,并且直接在页面上进行调试和测试,提高了开发效率。文章来源地址https://www.toymoban.com/news/detail-420860.html

到了这里,关于【Spring Boot】SpringBoot 优雅整合Swagger Api 自动生成文档的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Spring Boot整合Spring Fox生成Swagger文档

    Springfox是一个用于在Spring应用程序中生成Swagger文档的开源库。它提供了一组注解和工具,可以将你的API代码和文档整合在一起,方便生成和展示API的Swagger文档。 使用Springfox,你可以在Spring Boot项目中集成Swagger,并通过Swagger UI查看和测试API。它提供了一些注解,如 @Api 、 @

    2024年02月08日
    浏览(43)
  • spring boot 2.7.9 整合 Swagger 3.0

     jdk  1.8 springboot 2.7.9 swagger 3.0.0 描述:Failed to start bean \\\'documentationPluginsBootstrapper\\\'; nested exception is java.lang.NullPointerException 没有这个bean,空指针了。 据网上资料找,3.0的Swagger已经不继承WebMvcConfig这个类,是继承了WebMvcConfigSupport类,从而改动了配置路径规则,然后报空指针,

    2024年02月06日
    浏览(78)
  • Spring Boot整合swagger使用教程(这一篇就够了)

    你可能尝试过写完一个接口后,自己去创建接口文档,或者修改接口后修改接口文档。多了之后,你肯定会发生一个操作,那就是忘记了修改文档或者创建文档(除非你们公司把接口文档和写接口要求得很紧密😓忘记写文档就扣工资?,否则两个分离的工作总是有可能遗漏的

    2024年01月17日
    浏览(39)
  • SpringBoot整合Swagger-UI实现在线API文档

    ✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉🍎个人主页:Leo的博客 💞当前专栏: 循序渐进学SpringBoot ✨特色专栏: MySQL学习 🥭本文内容:SpringBoot整合Swagger-UI实现在线API文档 📚个人知识库: Leo知识库,欢迎大家访问

    2024年04月10日
    浏览(40)
  • Spring Boot 2.6 以上整合 Swagger + Knife4j 报错

    这个问题主要出现在 Spring Boot 2.6 及以后,只要是 Spring Boot 2.6 引入的新 PathPatternParser 导致的。 两种解决办法 Path匹配策略切换回 ​​ant_path_matcher ​ 添加下面这个Bean的定义

    2024年01月17日
    浏览(54)
  • Spring Boot3整合knife4j(swagger3)

    目录 1.前置条件 2.导依赖 3.配置 已经初始化好一个spring boot项目且版本为3X,项目可正常启动。 作者版本为3.2.2 初始化教程: 新版idea创建spring boot项目-CSDN博客 https://blog.csdn.net/qq_62262918/article/details/135785412?spm=1001.2014.3001.5501 knife4j官网: Knife4j · 集Swagger2及OpenAPI3为一体的增强

    2024年01月23日
    浏览(46)
  • 快速上手Spring Boot整合,开发出优雅可靠的Web应用!

    SpringBoot 是由 Pivotal 团队提供的全新框架,其设计目的是用来 简化 Spring 应用的 初始搭建 以及 开发过程 。 使用了 Spring 框架后已经简化了我们的开发。而 SpringBoot 又是对 Spring 开发进行简化的,可想而知 SpringBoot 使用的简单及广泛性。既然 SpringBoot 是用来简化 Spring 开发的,

    2024年02月21日
    浏览(42)
  • Spring Boot 3.x- RESTful API集成SpringDoc&Swagger-UI

    系列文章:Spring Boot 3.x 系列教程 springdoc-openapi 帮助使用Spring Boot项目自动化API文档的生成。 springdoc-openapi 的工作原理是在运行时检查应用程序,根据Spring配置、类结构和各种注释推断 API 语义。 自动生成 JSON/YAML 和 HTML 格式的 API 文档。这个文档可以通过使用 swagger-api 注解来

    2024年01月25日
    浏览(50)
  • 如何在Spring Boot中优雅地重试调用第三方API?

    🎉如何在Spring Boot中优雅地重试调用第三方API? ☆* o(≧▽≦)o *☆嗨~我是IT·陈寒🍹 ✨博客主页:IT·陈寒的博客 🎈该系列文章专栏:架构设计 📜其他专栏:Java学习路线 Java面试技巧 Java实战项目 AIGC人工智能 数据结构学习 🍹文章作者技术和水平有限,如果文中出现错误,

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

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

    2024年04月22日
    浏览(36)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包