Swagger的三個常用註解
阿新 • • 發佈:2019-02-16
1. @Api
用於修飾類,在qs專案中用於描述Controller
引數:description 用於對該類的定義或描述該類的作用
@Api(description = "備忘錄相關介面") @RestController public class MemoController { private final MemoRepository memoRepository; @Autowired public MemoController(MemoRepository memoRepository) { this.memoRepository = memoRepository;}
2. @ApiOperation
用於修飾方法或介面
引數:value = " ", 對方法的簡述
note = " ", 對方法或介面的具體描述
/** * 查詢 * * @return */ @ApiOperation(value="根據使用者id獲取備忘錄列表", notes="獲取當前使用者的所有備忘錄") @RequestMapping(value = "/{userId}/memos", method = RequestMethod.GET) public ResultData list( @ApiParam(required = true, value3. @ApiParam= "使用者id") @PathVariable("userId") String userId) { List<Memo> memos = memoRepository.findByUserId(userId); return ResultData.ok() .putDataValue("memos", memos); }
用於對每個引數的描述
引數:required = true, 表示該引數是必要引數。
value, 對引數的描述
注:Swagger對所有引數是可選的(required可以是false),
但是當引數作為路徑引數總是必須的,也就是說當引數出現在路徑中時,required必須為true。
如下圖程式碼中的userId.
/** * 按照memoId查詢 * * @param id * @return */ @ApiOperation(value="根據備忘錄id獲取備忘錄資訊", notes="獲取當前備忘錄資訊") @RequestMapping(value = "/{userId}/memos/{id}", method = RequestMethod.GET) public ResultData find( @ApiParam(required = true, value = "使用者id") @PathVariable("userId") String userId, @ApiParam(required = true, value = "備忘錄id") @PathVariable("id") String id) { Memo memo = memoRepository.findOne(id); return ResultData.ok() .putDataValue("memo", memo); }
其他註解可參考http://www.cnblogs.com/java-zhao/p/5348113.html