2

There are 2 ways to add OpenAPI 3 into Spring Boot project.

  • <groupId>org.springdoc</groupId>
    <artifactId>springdoc-openapi-ui</artifactId>
    

https://www.dariawan.com/tutorials/spring/documenting-spring-boot-rest-api-springdoc-openapi-3/

  • <groupId>io.springfox</groupId>
    <artifactId>springfox-boot-starter</artifactId>
    

https://medium.com/@hala3k/setting-up-swagger-3-with-spring-boot-2-a7c1c3151545

There are aloso migration isue for config and annotation

The question is: are there any reasons for Spring Boot project to make a choice beetwen them?

UPDATE: make migration to OpenAPI 3. Not too hard:) Maybe it will be helpfull:

OpenApiConfig, pom.xml, Описание

4

1 回答 1

4

在这种情况下,选择 Springdoc 而不是 Springfox 有一个明显的原因。原因是,springdoc-openapi-ui它是一个独立的库,同时springfox-boot-starter可传递地引入 Spring 依赖项。在查看了 POM 的样子后,Springfox 为许多 Spring 项目提供了一个包装器。同样对于 Swagger UI,您需要一个额外的 Springfox 依赖项。

因此,使用 Springdoc 可以让您更好地控制 Swagger 集成,这是可选的,以防您想使用像 Spring REST Docs 这样的静态文档框架

就迁移指南而言,它是用于将 Springfox 2.x 项目迁移到 Springdoc。Springdoc 支持 OpenAPI 3.x 而不是 2.x,而 Springfox 支持这两个版本的规范。

于 2021-01-11T18:35:06.673 回答