spring boot swagger

Spring Boot EP 7:使用Springdoc-OpenAPI實作Swagger

Springdoc-OpenAPI V.S. SpringFox

兩者都是實作Swagger的套件,透過這兩個套件,可以輕易的整合Swagger,不過兩者仍有一些不同:

  • Springdoc-OpenAPI (官網):僅支援OpenAPI 3的描述文件。
  • SpringFox (官網):支援Swagger 2、Swagger 3 以及 OpenAPI 3的描述文件。

觀察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 ~


, , ,

Related posts

Latest posts