spring boot 集成 swagger3及配置方法

 更新时间:2023年05月24日 11:36:39   作者:没毛的刷子  
Swagger 3是一种开源的API描述工具,它可以帮助开发人员设计、构建、文档化和测试API,这篇文章主要介绍了spring boot 集成 swagger3,需要的朋友可以参考下

Swagger 3是一种开源的API描述工具,它可以帮助开发人员设计、构建、文档化和测试API。Swagger 3支持多种编程语言和框架,包括Java、Node.js、Python、Ruby等,并提供了许多集成工具和插件,例如Postman、Apigee等。 Swagger 3使用OpenAPI规范来描述API,这是一种通用的API描述语言,适用于各种编程语言和框架。OpenAPI规范定义了API的基本结构、请求和响应的参数、头部信息、路径、HTTP方法和安全方案等。通过使用Swagger 3,开发人员可以从API文档中快速了解API的特点和功能,有效简化了API的构建维护。 在使用Swagger 3时,您需要在项目中添加Swagger 3依赖项,并配置好Swagger 3配置文件。然后您可以使用注释标记您的API端点以及请求和响应类和字段等,Swagger 3会根据这些注释生成API文档并提供UI界面进行浏览和测试等操作。

引入依赖

注:不需要额外依赖,只需要下面一个就能完成

<dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-boot-starter</artifactId>
      <version>3.0.0</version>
</dependency>

配置文件

​spring:
  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher

swagger配置类

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.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import java.util.ArrayList;
/**
 * swagger配置
 */
@Configuration
public class SwaggerConfig {
    Boolean swaggerEnabled = true;
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.OAS_30)
                .apiInfo(apiInfo())
                // 是否开启
                .enable(swaggerEnabled)//true
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.***.***")//配置扫描的路径
                .paths(PathSelectors.any())
                .build();
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("****接口文档")
                .contact(new Contact("clc", "http://www.baidu.com", "clc@x.com"))
                .version("1.0")
                .description("基本的一些接口说明")
                .license("Apache 2.0 许可") // 许可
                .licenseUrl("https://www.apache.org/licenses/LICENSE-2.0") // 许可链接
                .extensions(new ArrayList<>()) // 拓展
                .build();
    }
}

常用注解

Swagger3 常用注解使用位置
@Api在 Java 类上添加该注解。
@ApiOperation在 Java 类的方法上添加该注解。
@ApiParam在 Java 类的方法参数上添加该注解。
@ApiResponses在 Java 类的方法上添加该注解。
@ApiSecurity在 Java 类的方法上添加该注解。
@ApiModel在 Java 类的方法参数或返回值上添加该注解。
@ApiImplicitParams在 Java 类的方法参数上添加该注解。
@ApiHeader在 Java 类的方法参数或返回值上添加该注解。
@ApiFormData在 Java 类的方法参数或返回值上添加该注解。
@ApiUseDefaultValues在 Java 类的方法参数上添加该注解。

请求地址http://localhost:端口/swagger-ui/index.html

到此这篇关于spring boot 集成 swagger3的文章就介绍到这了,更多相关spring boot 集成 swagger3内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java SSM整合开发统一结果封装详解

    Java SSM整合开发统一结果封装详解

    这篇文章主要介绍了Java SSM整合开发实现统一结果封装,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • JavaEE实现前后台交互的文件上传与下载

    JavaEE实现前后台交互的文件上传与下载

    这篇文章主要介绍了JavaEE实现前后台交互的文件上传与下载,分享相关技术,实现文件上传下载功能,需要的朋友可以参考下
    2015-11-11
  • MyBatis 接收数据库中没有的字段的解决

    MyBatis 接收数据库中没有的字段的解决

    这篇文章主要介绍了MyBatis 接收数据库中没有的字段的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Spring session redis 修改默认的序列化方法(案例)

    Spring session redis 修改默认的序列化方法(案例)

    这篇文章主要介绍了Spring session redis 修改默认的序列化方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • SpringBoot初始教程之统一异常处理详解

    SpringBoot初始教程之统一异常处理详解

    本篇文章主要介绍了SpringBoot初始教程之统一异常处理详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Eclipse Debug模式的开启与关闭问题简析

    Eclipse Debug模式的开启与关闭问题简析

    这篇文章主要介绍了Eclipse Debug模式的开启与关闭问题简析,同时向大家介绍了一个简单的debug模式启动不起来的解决方法,希望对大家有所帮助。
    2017-10-10
  • 关于ThreadLocal和InheritableThreadLocal解析

    关于ThreadLocal和InheritableThreadLocal解析

    这篇文章主要介绍了关于ThreadLocal和InheritableThreadLocal解析,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Eclipse不自动编译java文件的终极解决方法

    Eclipse不自动编译java文件的终极解决方法

    这篇文章主要介绍了Eclipse不自动编译java文件的终极解决方法,需要的朋友可以参考下
    2015-12-12
  • SpringCloud zookeeper作为注册中心使用介绍

    SpringCloud zookeeper作为注册中心使用介绍

    ZooKeeper由雅虎研究院开发,是Google Chubby的开源实现,后来托管到Apache,于2010年11月正式成为Apache的顶级项目。ZooKeeper是一个经典的分布式数据一致性解决方案,致力于为分布式应用提供一个高性能、高可用,且具有严格顺序访问控制能力的分布式协调服务
    2022-11-11
  • Java拷贝文件夹和删除文件夹代码实例

    Java拷贝文件夹和删除文件夹代码实例

    这篇文章主要介绍了Java拷贝文件夹和删除文件夹代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04

最新评论