會員 | 注冊 | 畢業設計定做
QQ:1052602713
python源碼畢業設計 > python源碼 >

或者說一個接口 @ApiParam :單個參數描述 @ApiMod

文章來源:淘論文網   發布者:畢業設計   瀏覽量:

 

 
Swagger2一些常用注解
最近遇到了一個使用swagger來生成接口文檔的項目,在controller看到了一些沒用過的注解(@API、@ApiOperation等),遂記錄一下
 
@API
使用在類上,表明是swagger資源,@API擁有兩個屬性:value、tags,源碼如下
//If tags is not used,this value will be used to set the tag for the operations described by this resource. Otherwise, the value will be ignored.
 String value() default '';
 
 //Tags can be used for logical grouping of operations by resources or any other qualifier.
 String[] tags() default {''};
 
生成的api文檔會根據tags分類,直白的說就是這個controller中的所有接口生成的接口文檔都會在tags這個list下;tags如果有多個值,會生成多個list,每個list都顯示所有接口
 
@Api(tags = '列表1')
@Api(tags = {'列表1','列表2'})
 
 
value的作用類似tags,但是不能有多個值
@ApiOperation
使用于在方法上,表示一個http請求的操作
源碼中屬性太多,記幾個比較常用
value用于方法描述
notes用于提示內容
tags可以重新分組(視情況而用)
 
@ApiParam
使用在方法上或者參數上,字段說明;表示對參數的添加元數據(說明或是否必填等)
name–參數名
value–參數說明
required–是否必填
 
@ApiModel()
使用在類上,表示對類進行說明,用于參數用實體類接收
value–表示對象名
description–描述
 
@ApiModelProperty()
使用在方法,字段上,表示對model屬性的說明或者數據操作更改
value–字段說明
name–重寫屬性名字
dataType–重寫屬性類型
required–是否必填
example–舉例說明
hidden–隱藏
 
 
 
 
 
 
@ApiParam @PathVariable @RequestParam三者區別
[email protected] 顧名思義,是注解api的參數,也就是用于swagger提供開發者文檔,文檔中生成的注釋內容。
 
 
@ApiOperation( value = '編輯公告', notes = '編輯公告', httpMethod = 'POST' )
    @RequestMapping( value = '/edit', method = RequestMethod.POST )
    public RequestResult edit(
            @ApiParam(name = 'title', value = '公告標題', required = true) @RequestParam('title') String title,
            @ApiParam(name = 'content', value = '公告內容', required = true) @RequestParam('content') String content){
[email protected],是獲取前端傳遞給后端的參數,可以是get方法,也可以是post方法。其中如果前端傳遞的參數和后端你接受的參數起的名字字段是一致的可以省略不寫,也可以直接寫@RequestParam String title,如果不一致一定要完整寫,不然獲取不到,如下面的bis_key就必須寫。
 
復制代碼
@ApiOperation( value = '編輯公告', notes = '編輯公告', httpMethod = 'POST' )
    @RequestMapping( value = '/edit', method = RequestMethod.POST )
    public RequestResult edit(
            @ApiParam(name = 'bis_key', value = 'bis_key', required = true) String bisKey,
            @ApiParam(name = 'title', value = '公告標題', required = true) @RequestParam String title,
            @ApiParam(name = 'content', value = '公告內容', required = true)  String content,
復制代碼
[email protected],是獲取get方法,url后面參數,進行參數綁定
 
@ApiOperation(value = '刪除公告', notes = '刪除公告', httpMethod = 'POST')
    @RequestMapping(value = '/delete/{bisKey}', method = RequestMethod.POST)
    public RequestResult remove(@ApiParam(name = 'bisKey', value = '需要刪除的公告ids', required = true) @PathVariable String bisKey) {









pox.xml文件配置:
!--swagger2 start-- dependency groupId io.springfox /groupId artifactId springfox-swagger2 /artifactIdversion 2.4.0 /version/dependency dependency groupId io.springfox /groupId artifactId springfox-swagger-ui /artifactIdversion 2.4.0 /version/dependency !--swagger2 end-- spring boot

配置: parent groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-parent/artifactId version1.3.1.RELEASE/version /parent dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-web/artifactId /dependency maven項目結構:
在代碼的操控類中加入相關的注解
說明:
其中@ApiOperation和@ApiParam為添加的API相關注解,用于生成、描述、調用和可視化 RESTful 風格的 Web 服務,描述Controller的作用
@ApiOperation :描述一個類的一個方法, notes = 接口發布說明);
其他參數可參考源碼;
@ApiParam(required = 是否必須參數, name = 參數名稱, value = 參數具體描述)
最常用的5個注解 @Api :
修飾整個類, httpMethod = 接口請求方法,描述對象的一個字段 其它若干
@ApiResponse :HTTP響應其中 1 個描述
@ApiResponses :HTTP響應整體描述
@ApiIgnore :使用該注解忽略這個API
@ApiClass
@ApiError
@ApiErrors
@ApiParamImplicit
@ApiParamsImplicit
效果圖: swagger2 比swagger 不用手動添加swagger的頁面 ,或者說一個接口
@ApiParam :單個參數描述
@ApiModel :用對象來接收參數
@ApiProperty :用對象接收參數時,Swagger 讓部署管理和使用功能強大的API從未如此簡單,。

允許API來始終保持同步。

總體目標是使客戶端和文件系統作為服務器以同樣的速度來更新。

Swagger是一個規范和完整的框架,參數和模型緊密集成到服務器端的代碼,各參數說明如下: @ApiOperation(value = 接口說明, response = 接口返回參數類型,文件的方法。



免費論文檢測 論文查重

本文原地址:http://www.52268681.buzz/a/python/12207.html

qq游戏长沙麻将 og平台经典龙虎 快乐赛车怎么玩法介绍彩票 500期排列三走势图 山西快乐10分前三走势 莱特币矿机发布会 云南时时彩走势-点击进入 排列3购买技巧和规律 稥港曾道人网站 天津快乐10分软件下载 总进球数是什么意思 今晚cba即时比分 重庆快乐10分开奖 捕鸟达人无限金币 下载诸暨同城麻将 重庆时时彩破解手机版 福建快三开奖开奖