springboot 整合swagger2.0 增強(qiáng)版UI

簡介

Swagger 是一個規(guī)范和完整的框架未舟,用于生成、描述掂为、調(diào)用和可視化 RESTful 風(fēng)格的 Web 服務(wù)裕膀。總體目標(biāo)是使客戶端和文件系統(tǒng)作為服務(wù)器以同樣的速度來更新勇哗。文件的方法昼扛、參數(shù)和模型緊密集成到服務(wù)器端的代碼,允許 API 來始終保持同步欲诺。Swagger 讓部署管理和使用功能強(qiáng)大的 API 從未如此簡單抄谐。

swagger的接口文檔有兩種風(fēng)格,分別為水平列表和樹形分類扰法。

舊版UI

增強(qiáng)UI

接口詳情

其中蛹含,水平列表風(fēng)格在接口多起來后,就很不友好塞颁,找起接口來比較麻煩浦箱,所以這里將介紹樹形分類風(fēng)格的swagger。廢話不多說走起祠锣。酷窥。。

目錄結(jié)構(gòu)

首先伴网,案例是基于springboot web項目進(jìn)行講解的蓬推,目錄結(jié)構(gòu)如下:

目錄結(jié)構(gòu)

步驟一 引入依賴

<!-- swaggwe-ui -->

 <dependency>

 <groupId>io.springfox</groupId>

 <artifactId>springfox-swagger-ui</artifactId>

 <version>2.9.2</version>

 </dependency>

 <!-- swagger核心包 -->

 <dependency>

 <groupId>io.springfox</groupId>

 <artifactId>springfox-swagger2</artifactId>

 <version>2.9.2</version>

 </dependency>

 <!-- swaggwe增強(qiáng)ui -->

 <dependency>

 <groupId>com.github.xiaoymin</groupId>

 <artifactId>swagger-bootstrap-ui</artifactId>

 <version>1.9.6</version>

 </dependency>

步驟二 新建swagger配置類

@Configuration

//啟用swagger2

@EnableSwagger2

//啟用swagger增強(qiáng)UI

@EnableSwaggerBootstrapUI

public class SwaggerConfig {

 @Bean

 public Docket createRestApi() {

 return new Docket(DocumentationType.SWAGGER_2)

 .select()

 //這里寫的是API接口所在的包位置

 .apis(RequestHandlerSelectors.basePackage("com.ypk.swagger.controller"))

 .paths(PathSelectors.any())

 .build();

 }

}

步驟三 編寫接口

@Api(tags = "測試swagger")

@RestController

@RequestMapping(value = "/swagger")

public class SwaggerController {

 @ApiOperation(value = "獲取用戶信息")

 @GetMapping(value = "/info")

 public Result<User> getInfo() {

 return Result.<User>successResponse();

 }

 @ApiOperation(value = "獲取列表數(shù)據(jù)")

 @GetMapping(value = "/list")

 public Result<List<User>> getList() {

 return Result.<List<User>>successResponse();

 }

}

為了更好地做演示,這里建了兩個javabean類澡腾,Result和User沸伏。

@ApiModel(value = "結(jié)果對象")

@Data

@AllArgsConstructor

public class Result<T> {

 private static final String successMsg = "請求成功";

 private static final String failMsg = "請求失敗";

 private int status;

 private String message;

 private T data;

 public static <T> Result<T> successResponse() {

 return new Result<T>(200, successMsg, null);

 }
 public static <T> Result<T> successResponse(T data) {

 return new Result<T>(200, successMsg, data);

 }

 public static <T> Result<T> failResponse() {

 return new Result<T>(-1, failMsg, null);

 }

 public static <T> Result<T> failResponse(int status, T data) {

 return new Result<T>(status, failMsg, data);

 }

 public static <T> Result<T> failResponse(String message, T data) {

 return new Result<T>(-1, message, data);

 }

 public static <T> Result<T> failResponse(int status, String message, T data) {

 return new Result<T>(status, message, data);

 }

}
@ApiModel(value = "用戶視圖")

@Data

public class User {

 private int id;

 @ApiModelProperty(value = "用戶名")

 private String username;

 @ApiModelProperty(value = "年齡")

 private int age;

}

這里有關(guān)swagger的注解使用不明白的道友募逞,請看我的另一篇文章《注解篇-Swagger常用注解詳解》,@Api…開頭的都是swagger的注解馋评。

步驟四 啟動項目

啟動項目后放接,在瀏覽器地址欄訪問localhost:8080/doc.html

文檔主頁:

文檔主頁

單個接口詳情:

單個接口
接口詳情

導(dǎo)出離線文檔

若不想開放文檔地址,也可導(dǎo)出離線文檔供更多成員使用留特,導(dǎo)出的離線文檔是Markdown格式的文檔纠脾,可以使用Markdown轉(zhuǎn)word工具轉(zhuǎn)為word文檔,更能使更多人易于理解蜕青。

離線文檔

這里再介紹一款在線Markdown轉(zhuǎn)word工具:

http://tools.jb51.net/aideddesign/markdown_tool

在線Markdown

新建一個空白word文檔苟蹈,使用 保留源格式 方式粘貼即可。

保存word

至此右核,springboot整合swagger增強(qiáng)版UI接口文檔就完事了慧脱;
若文章對道友您有用,記得點贊評論加關(guān)注我哦:睾取A馀浮!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末躏鱼,一起剝皮案震驚了整個濱河市氮采,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌染苛,老刑警劉巖鹊漠,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異茶行,居然都是意外死亡躯概,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進(jìn)店門畔师,熙熙樓的掌柜王于貴愁眉苦臉地迎上來娶靡,“玉大人,你說我怎么就攤上這事茉唉」潭辏” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵度陆,是天一觀的道長艾凯。 經(jīng)常有香客問我,道長懂傀,這世上最難降的妖魔是什么趾诗? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上恃泪,老公的妹妹穿的比我還像新娘郑兴。我一直安慰自己,他們只是感情好贝乎,可當(dāng)我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布情连。 她就那樣靜靜地躺著,像睡著了一般览效。 火紅的嫁衣襯著肌膚如雪却舀。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天锤灿,我揣著相機(jī)與錄音挽拔,去河邊找鬼。 笑死但校,一個胖子當(dāng)著我的面吹牛螃诅,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播状囱,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼术裸,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了浪箭?” 一聲冷哼從身側(cè)響起穗椅,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎奶栖,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體门坷,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡宣鄙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了默蚌。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冻晤。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖绸吸,靈堂內(nèi)的尸體忽然破棺而出鼻弧,到底是詐尸還是另有隱情,我是刑警寧澤锦茁,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布攘轩,位于F島的核電站,受9級特大地震影響码俩,放射性物質(zhì)發(fā)生泄漏度帮。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望笨篷。 院中可真熱鬧瞳秽,春花似錦、人聲如沸率翅。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冕臭。三九已至痰洒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間浴韭,已是汗流浹背丘喻。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留念颈,地道東北人泉粉。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像榴芳,于是被迫代替她去往敵國和親嗡靡。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容