Swagger是一個開源軟件框架企软,由大型工具生態(tài)系統(tǒng)支持姑廉,可幫助開發(fā)人員設計,構建悔政,記錄和使用RESTful?Web服務晚吞。雖然大多數用戶通過Swagger UI工具識別Swagger,但Swagger工具集包括對自動文檔谋国,代碼生成和測試用例生成的支持槽地。
使用了swagger我們能做什么呢?
想問一下廣大的后端開發(fā)者是否為了在接口開完完成的時候因為需要些接口文檔而煩惱芦瘾,當然網上很多接口文檔書寫工具捌蚊,但是從現在開始,你們可以省去寫接口文檔的時間了近弟,不需要再為寫接口文檔而煩惱缅糟,使用了swagger能省去開發(fā)者省去寫接口文檔的時間,而且swagger是基于restful的接口框架祷愉,開發(fā)者只需要貼注解窗宦,寫注釋就能夠自動生成接口文檔赦颇,聽起來是不是很強大很方便,沒錯swagger就是這么強大
如何在項目中集成swagger赴涵?
那么重點來了媒怯,下面就以SpringBoot項目集成swagger舉例
首先需要導入Maven依賴
<groupId>io.springfox
? ? <artifactId>springfox-swagger2
? ? <version>2.7.0
? ? <groupId>io.springfox
? ? <artifactId>springfox-swagger-ui
? ? <version>2.7.0
</dependency>
接著新建一個swaggerconfig的配置類進行swagger獨有的配置
可能到這里有有人問,這么快髓窜?沒錯扇苞,就是這么快,這么簡單纱烘,我們的SpringBoot項目就集成了swagger了杨拐,接下來就是用了,下面就是各常用注解的使用擂啥。
@Api(description ="貼在類上,整個controller的注釋")
@ApiOperation(value ="貼在方法上帆阳,方法的注釋")
@ApiModelProperty(value ="貼在對象里的字段上")
注:當你需要的參數是一個對象的時候哺壶,對象里的字段是不是無法進行注釋,當你在字段上貼上此注解即可
@ApiImplicitParams?: 用在方法上包含一組參數說明蜒谤。
@ApiImplicitParam:用來注解來給方法入參增加說明山宾。
@ApiResponses:用于表示一組響應
@ApiResponse:用在@ApiResponses中,一般用于表達一個錯誤的響應信息
l?code:數字鳍徽,例如400
l?message:信息资锰,例如"請求參數沒填好"
l?response:拋出異常的類
@ApiModel:描述一個Model的信息(一般用在請求參數無法使用@ApiImplicitParam注解進行描述的時候)
補充說明:
paramType:指定參數放在哪個地方header:請求參數放置于Request Header,使用@RequestHeader獲取
query:請求參數放置于請求地址阶祭,使用@RequestParam獲取
path:(用于restful接口)-->請求參數的獲缺炼拧:@PathVariable
body:(不常用)
form(不常用)
name:參數名?
dataType:參數類型?
required:參數是否必須傳 true /false
value:說明參數的意思?
defaultValue:參數的默認值
總結的不好,請見諒濒募!