swagger常用到的註解有:
1. @api
api 用在類上,說明該類的作用。可以標記乙個controller類做為swagger 文件資源,使用方式:
@api
(value =
"/user"
, description =
"operations about user"
)
與controller註解並列使用。 屬性配置:
屬性名稱
備註value
url的路徑值
br#description
對api資源的描述
basepath
基本路徑可以不配置
position
如果配置多個api 想改變顯示的順序位置
高階特性認證時配置
hidden
配置為true 將在文件中隱藏
2. @apimodel
使用場景:在實體類上邊使用,標記類時swagger的解析類。
概述:提供有關swagger模型的其它資訊,類將在操作中用作型別時自動內省。
用法:屬性名稱
資料型別
預設值說明
value
string
類名為模型提供備用名稱
description
string
「」提供詳細類描述
parent
class<?> parent
void.class
為模型提供父類以允許描述繼承關係
discriminatory
string
「」支援模型繼承和多型,使用鑑別器的字段的名稱,可以斷言需要使用哪個子型別
subtypes
class<?>
{}從此模型繼承的子型別陣列
reference
string
」「指定對應型別定義的引用,覆蓋指定的任何其他元資料
3. @apimodelproperty
使用場景:使用在被 @apimodel 註解的模型類的屬性上。表示對model屬性的說明或者資料操作更改 。
概述:新增和操作模型屬性的資料。
用法:屬性名稱
資料型別
預設值說明
value
string
」「屬性簡要說明
name
string
「」執行覆蓋屬性的名稱,重新屬性名稱
allowablevalues
string
「」限制引數可接受的值,三種方法,固定取值,固定範圍
access
string
「」過濾屬性,參閱: io.swagger.core.filter.swaggerspecfilter
notes
string
「」目前尚未使用
datatype
string
「」引數的資料型別,可以是類名或原始資料型別,此值將覆蓋從類屬性讀取的資料型別
required
boolean
false
是否為必傳引數,false:非必傳引數 true:必傳引數
position
int0
允許在模型中顯示排序屬性
hidden
boolean
false
隱藏模型屬性,false:不隱藏 true:隱藏
example
string
「」屬性的示例值
readonly
boolean
false
指定模型屬性為唯讀,false:非唯讀 true:唯讀
reference
string
「」指定對應型別定義的引用,覆蓋指定的任何其他元資料
allowemptyvalue
boolean
false
允許傳空值,false:不允許傳空值 true:允許傳空值
4. @apioperation標記
apioperation:用在方法上,說明方法的作用,每乙個url資源的定義,使用方式:
@apioperation
( value =
"find purchase order by id"
, notes =
"for valid response try integer ids with value <= 5 or > 10. other values will generated exceptions"
, response = order,
tags =
)
與controller中的方法並列使用。
屬性配置:
屬性名稱
備註value
url的路徑值
br#description
對api資源的描述
basepath
基本路徑可以不配置
position
如果配置多個api 想改變顯示的順序位置
高階特性認證時配置
hidden
配置為true 將在文件中隱藏
response
返回的物件
responsecontainer
這些物件是有效的 「list」, 「set」 or 「map」.,其他無效
http的狀態碼 預設 200
extensions
擴充套件屬性
5. @apiparam標記
apiparam請求屬性,使用方式:
public responseentity
createuser
(@requestbody
@apiparam
(value =
"created user object"
, required =
true
) user user)
與controller中的方法並列使用。
屬性配置:
屬性名稱
備註name
屬性名稱
value
屬性值defaultvalue
預設屬性值
allowablevalues
可以不配置
required
是否屬性必填
access
不過多描述
allowmultiple
預設為false
hidden
隱藏該屬性
example
舉例子6. @apiresponse
apiresponse:響應配置,使用方式:
@apiresponse
(code =
400, message =
"invalid user supplied"
)
與controller中的方法並列使用。 屬性配置:
屬性名稱
備註code
http的狀態碼
message
描述response
預設響應類 void
reference
參考apioperation中配置
responseheaders
參考 responseheader 屬性配置說明
responsecontainer
參考apioperation中配置
7. @apiresponses
apiresponses:響應集配置,使用方式:
@apiresponses
()
與controller中的方法並列使用。 屬性配置:
屬性名稱
備註value
多個apiresponse配置
8. @responseheader
響應頭設定,使用方法
@responseheader
(name=
"head1"
,description=
"response head conf"
)
與controller中的方法並列使用。 屬性配置:
屬性名稱
備註name
響應頭名稱
description
頭描述response
預設響應類 void
responsecontainer
參考apioperation中配置
9. @其他
swagger注釋API詳細說明
注釋彙總 作用範圍 api使用位置 物件屬性 apimodelproperty 用在出入引數物件的字段上 協議集描述 api 用於controller類上 協議描述 apioperation 用在controller的方法上 response集 apiresponses 用在controller的方...
swagger注釋API詳細說明
注釋彙總 作用範圍 api使用位置 物件屬性 apimodelproperty 用在出入引數物件的字段上 協議集描述 api 用於controller類上 協議描述 apioperation 用在controller的方法上 response集 apiresponses 用在controller的方...
swagger注釋API詳細說明
注釋彙總 作用範圍 api使用位置 物件屬性 apimodelproperty 用在出入引數物件的字段上 協議集描述 api 用於controller類上 協議描述 apioperation 用在controller的方法上 response集 apiresponses 用在controller的方...