溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

springboot swagger2注解的用法

發(fā)布時間:2020-07-27 15:21:34 來源:億速云 閱讀:121 作者:小豬 欄目:編程語言

這篇文章主要講解了springboot swagger2注解的用法,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

swagger2 注解整體說明  最近在使用Swagger的時候忘記了注解的用法,特此記錄一下。

@Api:用在請求的類上,表示對類的說明
   tags="說明該類的作用,可以在UI界面上看到的注解"
   value="該參數(shù)沒什么意義,在UI界面上也看到,所以不需要配置"
 
 @ApiOperation:用在請求的方法上,說明方法的用途、作用
   value="說明方法的用途、作用"
   notes="方法的備注說明"
 
 @ApiImplicitParams:用在請求的方法上,表示一組參數(shù)說明
   @ApiImplicitParam:用在@ApiImplicitParams注解中,指定一個請求參數(shù)的各個方面
     name:參數(shù)名
     value:參數(shù)的漢字說明、解釋
     required:參數(shù)是否必須傳
     paramType:參數(shù)放在哪個地方
       · header --> 請求參數(shù)的獲?。篅RequestHeader
       · query --> 請求參數(shù)的獲取:@RequestParam
       · path(用于restful接口)--> 請求參數(shù)的獲?。篅PathVariable
       · body(不常用)
       · form(不常用)  
     dataType:參數(shù)類型,默認(rèn)String,其它值dataType="Integer"    
     defaultValue:參數(shù)的默認(rèn)值
 
 @ApiResponses:用在請求的方法上,表示一組響應(yīng)
   @ApiResponse:用在@ApiResponses中,一般用于表達(dá)一個錯誤的響應(yīng)信息
     code:數(shù)字,例如400
     message:信息,例如"請求參數(shù)沒填好"
     response:拋出異常的類
 
 @ApiModel:用于響應(yīng)類上,表示一個返回響應(yīng)數(shù)據(jù)的信息
       (這種一般用在post創(chuàng)建的時候,使用@RequestBody這樣的場景,
       請求參數(shù)無法使用@ApiImplicitParam注解進(jìn)行描述的時候)
   @ApiModelProperty:用在屬性上,描述響應(yīng)類的屬性

1. @Api:用在請求的類上,說明該類的作用

 @Api:用在請求的類上,說明該類的作用
   tags="說明該類的作用"
   value="該參數(shù)沒什么意義,所以不需要配置"

  示例:

@Api(tags="APP用戶注冊Controller")

2. @ApiOperation:用在請求的方法上,說明方法的作用

 @ApiOperation:"用在請求的方法上,說明方法的作用"
   value="說明方法的作用"
   notes="方法的備注說明"

  示例:

@ApiOperation(value="用戶注冊",notes="手機(jī)號、密碼都是必輸項,年齡隨邊填,但必須是數(shù)字")

3. @ApiImplicitParams:用在請求的方法上,包含一組參數(shù)說明

 @ApiImplicitParams:用在請求的方法上,包含一組參數(shù)說明
   @ApiImplicitParam:用在 @ApiImplicitParams 注解中,指定一個請求參數(shù)的配置信息    
     name:參數(shù)名
     value:參數(shù)的漢字說明、解釋
     required:參數(shù)是否必須傳
     paramType:參數(shù)放在哪個地方
       · header --> 請求參數(shù)的獲?。篅RequestHeader
       · query --> 請求參數(shù)的獲取:@RequestParam
       · path(用于restful接口)--> 請求參數(shù)的獲?。篅PathVariable
       · body(不常用)
       · form(不常用)  
     dataType:參數(shù)類型,默認(rèn)String,其它值dataType="Integer"    
     defaultValue:參數(shù)的默認(rèn)值

  示例:

 @ApiImplicitParams({
   @ApiImplicitParam(name="mobile",value="手機(jī)號",required=true,paramType="form"),
   @ApiImplicitParam(name="password",value="密碼",required=true,paramType="form"),
   @ApiImplicitParam(name="age",value="年齡",required=true,paramType="form",dataType="Integer")
})

4. @ApiResponses:用于請求的方法上,表示一組響應(yīng)

 @ApiResponses:用于請求的方法上,表示一組響應(yīng)
   @ApiResponse:用在@ApiResponses中,一般用于表達(dá)一個錯誤的響應(yīng)信息
     code:數(shù)字,例如400
     message:信息,例如"請求參數(shù)沒填好"
     response:拋出異常的類

示例:

@ApiOperation(value = "select1請求",notes = "多個參數(shù),多種的查詢參數(shù)類型")
 @ApiResponses({
   @ApiResponse(code=400,message="請求參數(shù)沒填好"),
   @ApiResponse(code=404,message="請求路徑?jīng)]有或頁面跳轉(zhuǎn)路徑不對")
 })

5. @ApiModel:用于響應(yīng)類上,表示一個返回響應(yīng)數(shù)據(jù)的信息

 @ApiModel:用于響應(yīng)類上,表示一個返回響應(yīng)數(shù)據(jù)的信息
       (這種一般用在post創(chuàng)建的時候,使用@RequestBody這樣的場景,
       請求參數(shù)無法使用@ApiImplicitParam注解進(jìn)行描述的時候)
   @ApiModelProperty:用在屬性上,描述響應(yīng)類的屬性

  示例:

 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import java.io.Serializable;
 @ApiModel(description= "返回響應(yīng)數(shù)據(jù)")
 public class RestMessage implements Serializable{
   @ApiModelProperty(value = "是否成功")
   private boolean success=true;
   @ApiModelProperty(value = "返回對象")
   private Object data;
   @ApiModelProperty(value = "錯誤編號")
   private Integer errCode;
   @ApiModelProperty(value = "錯誤信息")
   private String message;
   /* getter/setter */
 }

看完上述內(nèi)容,是不是對springboot swagger2注解的用法有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI