讲道理,这个工具覆盖的语言比较全,But 不是很好用的工具,里面包含的坑还是很多。从GitHub上的就可以看出,Star 7.8k,而issuer就已经提了2k个,慎用……

如果你希望使用的Swagger 2.0 版本的 OpenAPI的 V2版本,那么使用Swagger-Codegen是可以很好的满足自己的需求的;

OpenAPI Generator 是从Swagger-codegen中专门切分出来,用来满足快速开发的OpenAPI V3的版本。

Overview

这个项目的代码,是我基于这两天的学习整理出来的,主要是想通过 Swagger UI的界面,采用最新的 OpenAPi V3 的语法风格来生成相关的 yaml 文件,通过该yaml文件能够借助 OpenAPI Generator 的相关工具来自动的生成代码。

使用这个插件开发的相关思路说明:(帮助你提前避坑)

  1. 通过SwaggerHub 的Web界面,来定义好相关的API,编写好之后导出成yml格式文件;
  2. 引入OpenAPI 的Gradle插件来管理SpringBoot的项目;
  3. 尽量单独的起一个子模块来完全的存储OpenAPI Generator 产生的所有代码
  4. 实际的业务逻辑代码,可以在其它独立的模块中编写,并引入OpenAPI Generator生成的模块。

在使用这个工具的实际过程中,随着编写的加深,会感觉到自动生成的代码,非常的冗余且不好理解。这里个人建议,**只使用 OpenAPI Generator 工具生成最简单的模块(Models)和APi的接口。**好处不言而喻,在减少重复编写的代码的同时,能够极大的提升代码的灵活性。

项目地址

https://gitee.com/ilovestudy1314/spring-boot-guide 中的 swagger-codegen 分支

资料参考


  1. 官方的Github项目地址。 OpenAPI Generator
  2. OpenAPI接口的规范定义文档 OpenAPI-Spec
  3. OpenAPI同SpringBoot继承的项目是 springfox
  4. 生成器中,专门对于Spring环境下的配置说明 Generators - Spring - ConfigurationOption
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐