中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何定制yaml文件管理api并基于yaml文件生成完整程序

發布時間:2021-11-16 14:07:29 來源:億速云 閱讀:352 作者:iii 欄目:大數據

本篇內容主要講解“如何定制yaml文件管理api并基于yaml文件生成完整程序”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何定制yaml文件管理api并基于yaml文件生成完整程序”吧!

1. api管理方式背景

隨著項目團隊不斷地規范,開發流程的每一步都在不斷的變化,變得更加高效并且方便管理;api管理也經歷了不少的變化,主要變化從上到下演進:

  • 編寫后端接口api,從status的action到springmvc的@RequestMapping,這些框架的確可以幫我們完成后端接口的編寫,但對于前后端分離的項目,還需要編寫項目組制定的接口文檔;我相信,沒多少程序員寫完接口后還想寫接口文檔的。

  • 由于項目組開發系統比較多,為了統一管理公司內部所有系統的接口文檔,這個時候有的公司會定制化自己的接口文檔管理應用,通過這個應用可以簡單的實現在網站上直接編寫接口文檔信息,無須考慮接口文檔樣式等等,這樣做的確比上一種好一點,通過對定制化這個網站,我們可以做到在線調試接口情況、分版本管理、分配api管理權限。API管理-使用開源xxl-api項目管理接口

  • 在項目中集成swagger并在接口上加上api信息的注解,并通過swagger-ui.html界面進行api接口的查看和調試,詳細請參考:API管理-基于SpringBoot項目集成swagger實現接口文檔自動生成,如果覺得這套ui不友好,沒關系,可以換,API管理-舍棄springfox-swagger-ui,采用功能更加豐富的swagger-bootstrap-ui

  • 通過上面一種就基本可以完成api管理操作了,但這樣的swagger管理起來也存在代碼侵入性太高,為了達到目的還需要反復的調整接口注解或參數;既然存在問題,閱讀完這篇文章你就會學會:如何定制yaml文件管理api并基于yaml文件生成client端、server端、springboot完整程序,接下來進入主題。

2. 需要了解幾個概念

  • swagger 2.0和open api 3.0規范,其實就是規范對于的yaml文件格式定義,不同的情況下可以通過特定的規范進行不同后端代碼生成,對于swagger 2.0和open api 3.0規范生成代碼的插件也有好多個,swagger 2.0和open api 3.0還支持互轉,請參考:swagger2openapi。

如何定制yaml文件管理api并基于yaml文件生成完整程序

如何定制yaml文件管理api并基于yaml文件生成完整程序

這里先介紹基于swagger 2.0生成后端代碼,試過open api 3.0去做,但插件不太給力,沒有達到我想要的效果,沒法達到:基于yaml文件生成client端、server端、springboot完整程序;

  • 滿足swagger 2.0文件有json、yaml二種格式的,所以以后我們只要學會編寫這種yaml或json文件編寫規范就可以對接口進行管理。

3. 使用swagger-codegen完成基于yaml文件生成client端、server端、springboot完整程序

請先閱讀,這篇文章,寫的不錯:spring boot項目使用swagger-codegen生成服務間調用的jar包,百度了很多帖子,就這篇文章給了我想要的效果。

通過這種方法我可以生成一個只帶NameApi的接口的程序("interfaceOnly" : "true"),通過對這個程序的打包依賴到項目中,就可以完成對api管理,每次更新api接口只需要編寫好yaml重新生成一下jar并依賴到項目中就行,這樣還可以減少swagger相關注解的侵入性。通過這種方式只用在controller上實現對于的jar中的接口,還不需要調整service和mapper中的邏輯,service和mapper層還可以通過之前方式直接生成與數據庫交互的通用接口。

如何定制yaml文件管理api并基于yaml文件生成完整程序

除此之外swagger-codegen還可以通過"library" : "feign"生產我們想要的客戶端代碼(jar),這里的客戶端代碼就是一些封裝過的工具,可以通過指定方式去和server交互,如:sso-client.jar就是負責與sso-server進行交互的。

到此,相信大家對“如何定制yaml文件管理api并基于yaml文件生成完整程序”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绥江县| 麻城市| 华池县| 泰顺县| SHOW| 南郑县| 娄底市| 乌兰察布市| 龙口市| 霸州市| 长沙市| 宁强县| 沁水县| 河西区| 乌恰县| 林口县| 洪洞县| 连江县| 延吉市| 福贡县| 安宁市| 邵阳县| 桐柏县| 和龙市| 定远县| 宜兰县| 灵山县| 宁明县| 阿城市| 玉溪市| 博白县| 金寨县| 泾川县| 板桥市| 乌兰察布市| 门源| 阿鲁科尔沁旗| 如皋市| 特克斯县| 苏州市| 宜章县|