廢話不多說 先上**
@configuration
@enableswagger2
public
class
swagger2configuration
private apiinfo apiinfo()
/** * 所有標識了@api註解的類都要被掃瞄到,
** @return
*/public predicate withclassannotation
(final class<
?extends
annotation
>..
. annotations)
private
static function?>
, boolean>
annotationpresent
(final class<
?extends
annotation
>..
. annotations)
/** * 當前類或者其父類、介面是否存在當前註解中的任意乙個
* @param clazz 當前類
* @param annotations 目標介面
* @return
*/private
static
boolean
hasanyannotation
(class clazz
,final class<
?extends
annotation
>..
. annotations)}if
(!include)}if
(include)
}return
false;}
private
static optional<
?extends
class
<
?>>
declaringclass
(requesthandler input)
}
我們通常會將一些公用的東西放在common模組,然後業務模組引用公用模組,
再來看下我們常用的配置方式
@bean
public docket createrestapi()
private apiinfo apiinfo()
按照上面這種配置的話,現在我們有乙個業務的包名是daisy.combat.***.controller 那麼是不是意味者我們需要給上面的daisy.framework.api換成新的daisy.combat.***.controller,這個時候就有乙個問題了,我們的專案是分模組開發,通用模組會被很多模組引用,所以我們不能使用硬編碼的形式去解決它。
解決方案:
使用配置動態設定basepackage的值,這個時候需要解決配置多個路徑的問題
掃瞄新增了指定註解的類、介面等。。。本文就是從這個思路出發
我們可以自定義乙個api介面,當我們需要將它暴露給**哥的時候,只需要給它或者它的父類新增該註解即可,這樣的話不管我們的公用模組被什麼業務模組使用,對於公用模組而言都不用理會。
swagger常用註解
一 swagger常用註解 1 與模型相關的註解 兩個註解 2 與介面相關的註解 六個註解 二 幾個注意點 為了在swagger ui上看到輸出,至少需要兩個註解 api和 apioperation 即使只有乙個 apiresponse,也需要使用 apiresponses包住 對於 apiimpl...
swagger常用註解
一 swagger常用註解 1 與模型相關的註解 兩個註解 2 與介面相關的註解 六個註解 二 幾個注意點 為了在swagger ui上看到輸出,至少需要兩個註解 api和 apioperation 即使只有乙個 apiresponse,也需要使用 apiresponses包住 對於 apiimpl...
swagger常用註解
swagger2常用註解說明 2017年08月01日 14 00 38 說明 1.這裡使用的版本 springfox swagger2 2.4 springfox swagger ui 2.4 2.這裡是說明常用註解的含義和基本用法 也就是說已經對swagger進行整合完成 沒有整合的請參見 spr...