2017-04-06 69 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具有運行時依賴性。