終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

一、介紹

二、開源倉庫

三、功能特性

四、功能預覽

五、使用簡介

六、總結

一、介紹

knife4j是為Java MVC框架整合Swagger生成Api文件的增強解決方案(在非Java專案中也提供了前端UI的增強解決方案),前身是swagger-bootstrap-ui,取名knife4j是希望她能像一把匕首一樣小巧,輕量,並且功能強悍!

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

二、開源倉庫

Github

https://github。com/xiaoymin/swagger-bootstrap-ui

碼雲

https://gitee。com/xiaoym/knife4j

三、功能特性

簡潔

基於左右選單式的佈局方式,是更符合國人的操作習慣吧。文件更清晰。。。

個性化配置

個性化配置項,支援介面地址、介面description屬性、UI增強等個性化配置功能。。。

增強

介面排序、Swagger資源保護、匯出Markdown、引數快取眾多強大功能。。。

四、功能預覽

線上預覽

http://knife4j。xiaominfo。com/doc。html

選擇不同介面

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

Authorize

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

swagger實體

包含了swagger實體的相關資訊

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

swagger全域性設定

全域性引數設定

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

離線文件匯出

Knife4j提供匯出4種格式的離線文件(Html\Markdown\Word\Pdf)

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

個性化設定

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

api文件

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

搜尋功能

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

五、使用簡介

專案結構

終於放棄了單調的swagger-ui了,選擇了這款神器—knife4j

圖片

目前主要的模組

目前主要的模組包括:模組名稱說明:knife4j為Java MVC框架整合Swagger的增強解決方案knife4j-admin雲端Swagger介面文件註冊管理中心,整合gateway閘道器對任意微服務文件進行組合整合knife4j-extensionchrome瀏覽器的增強swagger介面文件ui,快速渲染swagger資源knife4j-service為swagger服務的一系列介面服務程式knife4j-frontknife4j-spring-ui的純前端靜態版本,用於整合非Java語言使用swagger-bootstrap-uiknife4j的前身,最後釋出版本是1。9。6

單純面板增強

不使用增強功能,純粹換一個swagger的前端面板,這種情況是最簡單的,你專案結構下無需變更

可以直接引用swagger-bootstrap-ui的最後一個版本1。9。6或者使用knife4j-spring-ui

老版本引用

  com。github。xiaoymin  swagger-bootstrap-ui  1。9。6

新版本引用

  com。github。xiaoymin  knife4j-spring-ui  ${lastVersion}

Spring Boot專案單體架構使用增強功能

在Spring Boot單體架構下,knife4j提供了starter供開發者快速使用

  com。github。xiaoymin  knife4j-spring-boot-starter  ${knife4j。version}

該包會引用所有的knife4j提供的資源,包括前端Ui的jar包

Spring Cloud微服務架構

在Spring Cloud的微服務架構下,每個微服務其實並不需要引入前端的Ui資源,因此在每個微服務的Spring Boot專案下,引入knife4j提供的微服務starter

  com。github。xiaoymin  knife4j-micro-spring-boot-starter  ${knife4j。version}

在閘道器聚合文件服務下,可以再把前端的ui資源引入

   com。github。xiaoymin   knife4j-spring-boot-starter   ${knife4j。version}

六、總結

針對knife4j的總結,無非就是牛逼來形容,切實的解決了swagger ui不夠友好的問題,而且還可以整合到其他語言的api專案中,真真切切的需要感謝開發作者提供了這麼好的工具供我們使用,小夥伴是不是心動了,趕緊去試試吧!enjoy it!

轉自: Java基基

原文連結: https://mp。weixin。qq。com/s/k3MGv6sArlVXOc7XYLLtvw