Spring Boot整合集成Swagger3.x

这两天学了一下Swagger,在SpringBoot整合Swagger的时候遇到点问题,在网上搜集了很多资料以后,发现Swagger3.x和Swagger2.x用法的一些区别。

如果使用不正确,在访问swagger-ui.html会出现404的问题

以整合Swagger为主,按照步骤,同时说明与Swagger2.x的一些区别

1、导入依赖坐标(不需用都导入,选择自己需要的版本)
<!-- Swagger3.x 核心依赖 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    <version>3.0.0</version>
</dependency>
<!-- Swagger2.x 核心依赖 -->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.9.2</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.9.2</version>
</dependency>
2、yml配置

Spring Boot 2.6.x版本中引入的一个新的路径匹配策略path_pattern_parser,但是SpringFox 3.0.0中默认期望使用ant_path_matcher作为路径匹配策略,因此存在的兼容性问题。如果直接引入SpringFox 3.0.0,可能会出现启动失败的问题。

所以需要在application.yml中添加下面的配置显式地告诉Spring MVC使用ant_path_matcher作为路径匹配策略。

spring:
  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher

下面的配置用来启用Swagger UI的,这是Swagger的Web界面,允许用户查看和测试API。如果使用的是Spring Boot 2.6.x或更高版本,并希望整合Swagger 3.0.0,需要确保在application.properties或application.yml中添加上述配置。这样可以避免启动时的异常,并确保Swagger UI能够正常工作。

springfox:
  documentation:
    swagger-ui:
      enabled: true

以上配置在Swagger2.x中就不需要添加

3、配置类

在Swagger3.x使用的是@EnableOpenApi作为启动类配置注解

在Swagger2.x使用的是@EnableSwagger2作为启动类配置注解

@Configuration
@EnableOpenApi
//@EnableSwagger2
    public class SwaggerConfig {}
4、运行项目并访问Swagger页面

在Swagger2.x中的访问路径是http://127.0.0.1:8080/swagger-ui.html

在Swagger3.x中的访问路径是http://127.0.0.1:8080/swagger-ui/index.html

算是个入门练习吧!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不南不难

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值