四、註解説明
注意:註解中其實會有很多的屬性,該文章只列出部分常用的屬性而已,其他不常用屬性請查看其他人博客!
@Api
@Api
@Api :
位置:用在請求的類上,例如Controller,
作用:説明該類的主要作用。
參數説明:@Api("tags":"", "value":"", "description ":"")
tags:説明該類的作用,參數是個數組,可以填多個。
value="該參數沒什麼意義,在UI界面上不顯示,所以不用配置"
description = "用户基本信息操作"
代碼示例如下:
@RestController
@RequestMapping("/swagger")
@Api(tags = "用户管理")
@Slf4j
public class SwaggerController {}
網站效果展示:
<hr>
@ApiOperation
@ApiOperation
@ApiOperation:
位置:用在請求方法上
作用:説明方法的用途、作用
參數説明:@ApiOperation("value":"", "notes":"", "tags ":"")
value="方法的用途和作用"
notes="方法的注意事項和備註"
tags:説明該方法的作用, 參數是個數組,可以填多個。例如格式:tags={"作用1","作用2"}
代碼示例如下:
@GetMapping("/getList")
@ApiOperation(value = "分頁查詢", notes = "分頁查詢的注意事項和備註", tags = {"説明該方法的作用1,説明該方法的作用2"})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){
網站效果展示:
<hr>
@ApiImplicitParams
@ApiImplicitParams
@ApiImplicitParams:
位置:用在請求方法上
作用:包含多@ApiImplicitParam,包含一組參數説明。
參數説明:@ApiImplicitParams({@ApiImplicitParam("name":"", "value":"", "dataType":"", "paramType":"", "required":"")...})
代碼示例如下:
@GetMapping("/getList")
@ApiOperation(value = "分頁查詢", notes = "分頁查詢的注意事項和備註", tags = {"説明該方法的作用1,説明該方法的作用2"})
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "當前頁碼,從1開始", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = "pageSize", value = "每頁顯示記錄數", paramType = "query",required = true, dataType="int") ,
})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){
@ApiImplicitParam
@ApiImplicitParam
@ApiImplicitParam:
位置:用在請求方法上
作用:用在@ApiImplicitParams註解中,指定一個請求參數的各個方面説明
參數説明:@ApiImplicitParam("name":"", "value":"", "dataType":"", "paramType":"", "required":"")
name="參數名稱"
value="參數説明"
dataType="數據類型",默認String
required=true 參數是否必選
paramType="query" 表示參數放在哪裏,查詢參數類型,這裏有幾種形式:
header --> 請求參數的獲取:@RequestHeader,參數在 request headers 裏邊提交
query --> 請求參數的獲取:@RequestParam,直接跟參數,完成自動映射賦值
path(用於 restful 接口)--> 請求參數的獲取:@PathVariable,以地址的形式提交數據
body(不常用)--> 以流的形式提交 僅支持 POST
form(不常用)--> 以 form 表單的形式提交 僅支持 POST
代碼示例如下:
@GetMapping("/getList")
@ApiOperation(value = "分頁查詢", notes = "分頁查詢的注意事項和備註", tags = {"説明該方法的作用1,説明該方法的作用2"})
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "當前頁碼,從1開始", paramType = "query", required = true, dataType="int") ,
@ApiImplicitParam(name = "pageSize", value = "每頁顯示記錄數", paramType = "query",required = true, dataType="int") ,
})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){
網站效果展示:
<hr>
@ApiResponses
@ApiResponses
@ApiResponses:用在請求的方法上,表示一組響應
代碼示例如下:
@GetMapping("/getList")
@ApiResponses({
@ApiResponse(code=400,message="請求參數及格式不對"),
@ApiResponse(code=404,message="請求路徑沒有或頁面跳轉路徑不對")
})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){
@ApiResponse
@ApiResponse
@ApiResponse:用在@ApiResponses中,一般用於表達一個錯誤的響應信息
code:數字,例如400
message:信息,例如"請求參數沒填好"
response:拋出異常的類
代碼示例如下:
@GetMapping("/getList")
@ApiResponses({
@ApiResponse(code=400,message="請求參數及格式不對"),
@ApiResponse(code=404,message="請求路徑沒有或頁面跳轉路徑不對")
})
public Response<PageResult<User>> getList(@RequestParam int pageNo, @RequestParam int pageSize){
網站效果展示:
<hr>
重要信息