Spring Boot EP 7:使用Springdoc-OpenAPI實作Swagger
Springdoc-OpenAPI V.S. SpringFox
兩者都是實作Swagger的套件,透過這兩個套件,可以輕易的整合Swagger,不過兩者仍有一些不同:
觀察Github上的動態,以本篇撰寫的時間來看,Springdoc-OpenAPI最近的一次Commit是”昨天”,而SpringFox則是2020年10月,再綜觀社群的發展,雖然SpringFox已經累積了廣大資本,但Springdoc-OpenAPI卻有後發先至的態勢,且若是開發新系統,除非有特別的目的,舊版的規格與技術真的不需要再特意相容,讓整體系統更單純輕量。
以上原因,所以本篇選擇導入Springdoc-Op。
安裝及設定
步驟1:在pom.xml放置Springdoc-OpenAPI的參數,讓Maven自動下載及安裝。
<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-ui</artifactId>
<version>1.6.5</version>
</dependency>
步驟2:pom.xml修改後存檔,VS Code右下角會跳出要Reload的提示(如下圖),按下”Now” (懶惰的話也可以選Always),等待系統自動Reload後即可。
步驟3:在application.properties增加Swagger網址的設定,如下:
springdoc.swagger-ui.path=/swagger-ui.html
步驟4:啟動專案,就可以藉由http://{host name or IP}:{port}/api/swagger-ui.html瀏覽Swagger的網頁了。
如上圖,可以看到上一篇撰寫的Restful API會自動列於畫面上,並且可以簡單的執行與測試,讓前後端工程師有更良好的溝通,不再雞同鴨講。
~ END ~