SpringBoot如何優雅地使用Swagger2

2021-10-07 22:26:57 字數 1153 閱讀 3799

spring boot 框架是目前非常流行的微服務框架,我們很多情況下使用它來提供 rest api。而對於 rest api 來說很重要的一部分內容就是文件,swagger 為我們提供了一套通過**和註解自動生成文件的方法,這一點對於保證 api 文件的及時性將有很大的幫助。本文將使用 swagger 2 規範的 springfox 實現來了解如何在 spring boot 專案中使用 swagger,主要包含了如何使用 swagger 自動生成文件、使用 swagger 文件以及 swagger 相關的一些高階配置和註解。

swagger 簡介

swagger 是一套基於 openapi 規範構建的開源工具,可以幫助我們設計、構建、記錄以及使用 rest api。swagger 主要包含了以下三個部分:

swagger ui:它會將我們編寫的 openapi 規範呈現為互動式的 api 文件,後文我將使用瀏覽器來檢視並且操作我們的 rest api。

swagger codegen:它可以通過為 openapi(以前稱為 swagger)規範定義的任何 api 生成伺服器存根和客戶端 sdk 來簡化構建過程。

為什麼要使用 swagger

當下很多公司都採取前後端分離的開發模式,前端和後端的工作由不同的工程師完成。在這種開發模式下,維持乙份及時更新且完整的 rest api 文件將會極大的提高我們的工作效率。傳統意義上的文件都是後端開發人員手動編寫的,相信大家也都知道這種方式很難保證文件的及時性,這種文件久而久之也就會失去其參考意義,反而還會加大我們的溝通成本。而 swagger 給我們提供了乙個全新的維護 api 文件的方式,下面我們就來了解一下它的優點:

**變,文件變。只需要少量的註解,swagger 就可以根據**自動生成 api 文件,很好的保證了文件的時效性。

跨語言性,支援 40 多種語言。

swagger ui 呈現出來的是乙份可互動式的 api 文件,我們可以直接在文件頁面嘗試 api 的呼叫,省去了準備複雜的呼叫引數的過程。

還可以將文件規範匯入相關的工具(例如 soapui), 這些工具將會為我們自動地建立自動化測試。

以上這些優點足以說明我們為什麼要使用 swagger 了,您是否已經對 swagger 產生了濃厚的興趣了呢?下面我們就將一步一步地在 spring boot 專案中整合和使用 swagger,讓我們從準備乙個 spring boot 的 web 專案開始吧。

如何優雅地寫部落格

如何優雅地寫部落格 現在寫部落格面臨著幾個問題 編寫麻煩,大部分的部落格編輯器都很爛,csdn和等等。維護麻煩,維護多個部落格的資料同步很麻煩。歷史檢視,大部分部落格編寫都不能檢視之前的歷史資料。用github做部落格倉庫,將資料都寫在github上,這樣可以隨時檢視一年前的部落格資料,方便在原文件...

如何優雅地書寫JavaScript

這篇文章包含了幾乎所有關於提高 質量的內容,尤其是在構建大型應用程式時。主要包括四個部分 本主題僅涉及原生js,關於框架 比如react和vue 的內容會在以後的文章中展現。我想你們大多數人之前都聽說過solid,也就是物件導向設計裡的solid原則。這些原則基於物件導向設計,所以可能不適合其他程式...

如何優雅地關閉SparkStreaming

how to shutdown a spark streaming job gracefully 17 02 02 01 31 35 info streaming.streamingcontext invoking stop stopgracefully true from shutdown hoo...