天天看點

Spring Boot 內建Swagger

Swagger 是一個規範和完整的架構,用于生成、描述、調用和可視化 RESTful 風格的 Web 服務。總體目标是使用戶端和檔案系統作為伺服器以同樣的速度來更新。檔案的方法,參數和模型緊密內建到伺服器端的代碼,允許API來始終保持同步。Swagger 讓部署管理和使用功能強大的API從未如此簡單。

更多關于Swagger的作用,相信大家百度一下能了解的更全面,本文以SpringBoot中內建Swagger為例做介紹說明。

一、修改pom.xml,添加maven依賴

二、添加Swagger配置類

Swagger會預設把所有Controller中的RequestMapping方法都生成API出來,實際上我們一般隻需要标準接口的(像傳回頁面的那種Controller方法我們并不需要),所有你可以按下面的方法來設定要生成API的方法的要求。 

如下我針對RestController注解的類和ResponseBody注解的方法才生成Swaager的API,并且排除了特定的類,代碼如下:

三、常見swagger注解一覽與使用

最常用的5個注解

其它若幹

下面建立2個Controller來測試: 

1、TestController.java

2、DemoController.java

Swagger2預設将所有的Controller中的RequestMapping方法都會暴露,然而在實際開發中,我們并不一定需要把所有API都提現在文檔中檢視,這種情況下,使用注解@ApiIgnore來解決,如果應用在Controller範圍上,則目前Controller中的所有方法都會被忽略,如果應用在方法上,則對應用的方法忽略暴露API。

注解@ApiOperation和@ApiParam可以了解為API說明,多動手嘗試就很容易了解了。 

如果我們不使用這樣注解進行說明,Swagger2也是有預設值的,沒什麼可說的試試就知道了。

引自 http://blog.csdn.net/catoop/article/details/50668896