2017-04-06 68 views
3

如果你想为你的Spring MVC项目生成Swagger UI文档,基本上你有两个选择:Enunciate和SpringFox。为Spring MVC生成Swagger JSON:Springfox或者Enunciate

我潜入这个问题,但没有找到哪一个更好的单一意见。

从我的角度来看,由于它完全在您的项目外部,因此看起来更可取。不需要添加配置的特殊Bean,也不需要引用额外的包含注释的包,并用它们标注控制器。您可以简单地使用带有自定义标签的JavaDoc,并完成这项工作。

是否有其他考虑因素需要考虑?

感谢。

回答

1

同时使用后,我发现以下主要区别:

  • 字正腔圆评估在构建时注解,Springfox读取应用程序上下文中的Spring MVC配置(建立时间与运行时间)
  • 可以字正腔圆使用Javadoc作为文档的一部分(构建vs.运行时)
  • Springfox需要测试来生成一个可用于进一步代码生成的swagger配置文件,该文件不太适合标准maven生命周期。我倾向于使用generate-sources/generate-resources来生成代码/文档。随着springfox我坚持运行测试后生成。
  • Springfox与springfox-swagger-ui是一个非常简单的方法来在现有的Spring Boot/MVC应用程序之上绑定一个Swagger UI。 OTOH,使用像ReDoc和生成的Swagger Spec一样简单但更灵活。
  • Springfox需要在您的应用程序中进行一些配置,因此您的应用程序将对Springfox具有运行时依赖性。