問題 微服務化的時代,我們整個項目工程下面都會有很多的子系統,對於每個應用都有暴露 Api 接口文檔需要,這個時候我們就會想到 Swagger 這個優秀 jar 包。但是我們會遇到這樣的問題,假如說我們有5個應用,難道說我們每個模塊下面都要去引入這個 jar 包嗎?我作為一個比較懶的程序感覺這樣好麻煩,於是乎我思考了一種我認為比較好的方式,如果大家覺得有什麼不太好的地方希望指正,謝謝! 基礎 開始之前大家首先要了解一些基礎,主要有以下幾個方面: 單應用下 Swagger 的集成與使用 條件裝配 @Conditional 介紹 配置文件參數獲取 @ConfigurationProperties 單體應用下 Swagger 集成與使用 關於這部分從3方面講起分別是:什麼是、為什麼、如何用 什麼是 Swagger ? Swagger 是一個規範且完整的框架,用於生成、描述、調用和可視化 RESTful 風格的 Web 服務。 為什麼使用 Swagger ? 主要的優點: 支持 API 自動生成同步的在線文檔:使用 Swagger 后可以直接通過代碼生成文檔,不再需要自己手動編寫接口文檔了,對程序員來說非常方便,可以節約寫文檔的時間去學習新技術。 提供 Web 頁面在線測試 API:光有文檔還不夠,Swagger 生成的文檔還支持在線測試。參數和格式都定好了,直接在界面上輸入參數對應的值即可在線測試接口。 缺點的話就是但凡引入一個 jar 需要去了解下原理和使用,對於這個缺點我感覺相比於優點就是大巫見小巫,我簡單看了一下源碼,其實不算太難。 如何使用 Swagger 關於 Swagger 的使用其實也就是3板斧,大家一定很熟悉的; 第一板斧就是引入 jar 包,這裏我使用的是2.9.2版本 <!-- swagger 相關 --> < dependency > ...