![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIiY4ETZhJzNx0TZjJXdvN3PnBnaucHM0QTMfZzY0QjZiRTO1IjYlFmMyQTY3QTO5UWZiFWYjhTNmlDZtIjdvwVbvNmLn1WaopnLyMWaw9CXvwlOzBHd0hWPsJXdmYDM3YjZkJGNzQDNl1SOhRGOtETMiVWLmJjYz0yY5EzY4MTMj1DZpV3ZmITPlBXe0ZyPldWYtl2LcdXZpZ3Lc12bj5SZjVjL5h3byBnLxATLn1Wavw1LcpDc0RHaiojIsJye.jpg)
本文介紹如何用
spring boot內建
Swagger-UI,實作項目線上接口文檔
一、Swagger-UI簡介Swagger是一個Restful風格接口的文檔線上自動生成和測試的架構
官網對Swagger-UI的介紹:
簡單的說就是:Swagger提供了一組靜态頁面,可以在SpringBoot應用中內建這些靜态頁面,直接通路靜态頁面,并打開指定的Swagger規範,就可以顯示、測試調用接口:
而
在SpringBoot中內建Swagger是非常容易的,僅需增加幾個簡單的注解。 效果如圖:Swagger2Config類位于config包,用來配置swagger。
介紹一些簡單的配置:
1、API接口文檔的生成範圍,即在頁面顯示你哪些API接口Swagger對生成API文檔的範圍有三種不同的選擇
- 生成指定包面的類的API文檔下
- 生成有指定注解的類的API文檔
- 生成有指定注解的方法的API文檔
三種方式如圖:
對應關系如圖:
- @Api:用于修飾Controller類,生成Controller相關文檔資訊
- @ApiOperation:用于修飾Controller類中的方法,生成接口方法相關文檔資訊
- @ApiParam:用于修飾接口中的參數,生成接口參數相關文檔資訊
- @ApiModelProperty:用于修飾實體類的屬性,當實體類是請求參數或傳回結果時,直接生成相關文檔資訊
value - 字段說明
description - 注釋說明這個類
對應:
value - 字段說明
notes - 注釋說明
httpMethod - 說明這個方法被請求的方式
response - 方法的傳回值的類型
value–字段說明
name–重寫屬性名字
dataType–重寫屬性類型
required–是否必填
example–舉例說明
hidden–隐藏
code - 響應的HTTP狀态碼
message - 響應的資訊内容
四、如何加authorizations如項目內建了OAuth2或JWT等 使用者驗證,不能直接調用需要添加
authorizations可以從控制台拿到,添加後就可以自由調用
http://localhost:8080/swagger-ui.html
看版本資訊
http://localhost:8080/swagger-resources/