千家信息网

Swagger有什么用

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇内容介绍了"Swagger有什么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Swagger
千家信息网最后更新 2026年11月02日Swagger有什么用

本篇内容介绍了"Swagger有什么用"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Swagger 是什么?

Swagger 是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲,Swagger 就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和测试的服务。

  • PS:Swagger 遵循了 OpenAPI 规范,OpenAPI 是 Linux 基金会的一个项目,试图通过定义一种用来描述 API 格式或 API 定义的语言,来规范 RESTful 服务开发过程。

Swagger 官网地址:https://swagger.io/

Swagger 有什么用?

从上述 Swagger 定义我们不难看出 Swagger 有以下 3 个重要的作用:

将项目中所有的接口展现在页面上,这样后端程序员就不需要专门为前端使用者编写专门的接口文档;

当接口更新之后,只需要修改代码中的 Swagger 描述就可以实时生成新的接口文档了,从而规避了接口文档老旧不能使用的问题;

通过 Swagger 页面,我们可以直接进行接口调用,降低了项目开发阶段的调试成本。

Swagger 旧版本使用

Swagger 旧版本也就是目前市面上主流的 V2 版本是 Swagger 2.9.2,在讲新版本之前,我们先来回顾一下 Swagger 2.9.2 是如何使用的。

Swagger 2.9.2 的使用分为以下 4 步:

  1. 鸿蒙官方战略合作共建--HarmonyOS技术社区

  2. 添加依赖

  3. 开启 Swagger 功能

  4. 配置 Swagger 文档摘要信息

  5. 调用接口访问

下面我们分别来看。

1.添加依赖

首先,我们要去 mvnrepository 查询 Swagger 的依赖,搜索"springfox"关键字,得到结果的前两条依赖信息,就是我们想要的结果,如下图所示:


将这两个依赖添加带项目中:

      io.springfox     springfox-swagger2     2.9.2         io.springfox     springfox-swagger-ui     2.9.2 
为什么是"springfox"?

问:我们要使用的是 Swagger,为什么要搜索"springfox"?

答:Swagger 可以看作是一个遵循了 OpenAPI 规范的一项技术,而 springfox 则是这项技术的具体实现。就好比 Spring 中的 AOP 和 DI 一样,前者是思想,而后者是实现。

2.开启Swagger

在 Spring Boot 的启动类或配置类中添加 @EnableSwagger2 注释,开启 Swagger,部分核心代码如下:

@EnableSwagger2 @SpringBootApplication public class Application {...

3.配置摘要信息

import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2;  @Configuration public class SwaggerConfig {     @Bean     public Docket createRestApi() {         return new Docket(DocumentationType.SWAGGER_2) // 1.SWAGGER_2                 .select()                 .apis(RequestHandlerSelectors.basePackage("com.example.swaggerv2.controller")) // 2.设置扫描路径                 .build();     } }

4.访问Swagger

项目正常启动之后使用"http://localhost:8080/swagger-ui.html"访问Swagger页面,如下图所示:

Swagger 最新版使用

Swagger 最新版的配置步骤和旧版本是一样,只是每个具体的配置项又略有不同,具体步骤如下。

1.添加依赖

    io.springfox   springfox-boot-starter   3.0.0 

从上述配置可以看出,Swagger 新版本的依赖项只有一个,而旧版本的依赖项有两个,相比来说也简洁了很多。

2.开启Swagger

在 Spring Boot 的启动类或配置类中添加 @EnableOpenApi 注释,开启 Swagger,部分核心代码如下:

@EnableOpenApi @SpringBootApplication public class Application {...

3.配置摘要信息

import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.oas.annotations.EnableOpenApi; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket;  @Configuration public class SwaggerConfig {     @Bean     public Docket createRestApi() {         return new Docket(DocumentationType.OAS_30) // v2 不同                 .select()                 .apis(RequestHandlerSelectors.basePackage("com.example.swaggerv3.controller")) // 设置扫描路径                 .build();     } }

从上述代码可以看出 Docket 的配置中只有文档的类型设置新老版本是不同的,新版本的配置是 OAS_30 而旧版本的配置是 SWAGGER_2。

  • PS:OAS 是 OpenAPI Specification 的简称,翻译成中文就是 OpenAPI 说明书。

4.访问Swagger

新版本的 Swagger 访问地址和老版本的地址是不同的,新版版的访问地址是"localhost:8080/swagger-ui/",如下图所示:

新版本 VS 老版本

新版本和老版本的区别主要体现在以下 4 个方面:

  1. 鸿蒙官方战略合作共建--HarmonyOS技术社区

  2. 依赖项的添加不同:新版本只需要添加一项,而老版本需要添加两项;

  3. 启动 Swagger 的注解不同:新版本使用的是 @EnableOpenApi,而老版本是 @EnableSwagger2;

  4. Docket(文档摘要信息)的文件类型配置不同:新版本配置的是 OAS_3,而老版本是 SWAGGER_2;

  5. Swagger UI 访问地址不同:新版本访问地址是"http://localhost:8080/swagger-ui/",而老版本访问地址是"http://localhost:8080/swagger-ui.html"。

"Swagger有什么用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

版本 配置 接口 不同 地址 文档 项目 信息 代码 技术 摘要 页面 就是 服务 两个 内容 只有 官方 战略 更多 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 手冲咖啡和咖啡机区别 什么是科技互联网 互联网是第几次科技革命的成果 互联网科技有限公司经营范围 互联网科技与金融科技 银优互联网科技有限公司 电子科技大学互联网 广州善班互联网科技 科技大学互联网专业好不好 科技与互联网哪个更好 互联网对科技的发展 互联网科技人工智能实验室 朱啸虎曾投资哪些互联网科技企业 群盈汇互联网科技有限公司 互联网科技快讯热点 国产互联网科技公司 互联网科技手机排行榜 互联网公司属于科技吗 上海互联网科技园景观 现代科技的标志之一的互联网 云之行互联网科技 北京禾田雨橡互联网科技 广州慧亚互联网科技怎么样 剑昆互联网络科技有限公司临桂 随着互联网科技发展 互联网与医疗科技 深圳市罗太互联网科技有限公司 工业互联网等科技实现智能化赋能 中天科技中国工业互联网 中国科技和美国互联网
0