在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

swagger和smart-doc的區別

科技綠洲 ? 來源:Java技術指北 ? 作者:Java技術指北 ? 2023-09-30 16:08 ? 次閱讀

首先,Swagger 這個工具能夠自動生成 API 接口文檔,在線調試,節省了很多書寫文檔的時間,非常強大。

但是,想要文檔生成的合格,還是要書寫大量的注解。有沒有一種連注解都不用寫的方式呢?

smart-doc簡介

今天了不起給大家推薦一個技術:smart-doc,看名字就知道,它是 智能-文檔。直接分析代碼,根據代碼含義生成文檔(開個玩笑,它還沒有那么智能);其實它是利用的注釋,來生成文檔,還是需要寫注釋的。

官方介紹:smart-doc是一款同時支持JAVA REST API和Apache Dubbo RPC接口文檔生成的工具,smart-doc在業內率先提出基于JAVA泛型定義推導的理念, 完全基于接口源碼來分析生成接口文檔,不采用任何注解侵入到業務代碼中。你只需要 按照java-doc標準編寫注釋 , smart-doc就能幫你生成一個簡易明了的Markdown、HTML5、Postman Collection2.0+、OpenAPI 3.0+的文檔。

swagger和smart-doc的對比

我們來看看swagger和smart-doc的區別

來看看smart-doc 的代碼

圖片

如果是swagger 的寫法,每個字段都要加上 @ApiModelProperty("xxx") 的注解,如果有幾十個字段,幾十個類,那代碼量多的可不小。

不過這些類一般都是自動生成工具生成的,對寫代碼的人影響不大,不過這樣子寫倒是簡潔了不少,甚得我意~

可能有人就說了,我不寫注釋,只寫swagger注解,看起來也很簡潔,這也確實沒錯。

圖片

確實看起來很簡潔,不過沒有文檔注釋的情況下,在其他類里你是看不到這個字段的解釋的,每次找字段都得回到這個類看看到底是不是這個字段。如果你和同事們的英語都 very good,當我沒說。

如果是api接口,smart-doc想要生成文檔,需要寫成這樣(好像看起來什么都沒寫)

圖片

而swagger就需要加上@ApiOperation()這個注解,如果是個參數多的接口,還需要@ApiImplicitParams()這個注解,徒增學習成本

圖片

使用smart-doc

總共需要3步:

  1. 引入pom依賴,是一個插件

    
    plugin>
        groupId>com.github.shalousungroupId>
        artifactId>smart-doc-maven-pluginartifactId>
        version>${smart-doc-plugin.version}version>
        configuration>
            
            configFile>${basedir}/src/main/resources/smart-doc.jsonconfigFile>
            
            projectName>${project.name}projectName>
            excludes>
                
                
                exclude>com.fu:common-.*exclude>
                exclude>com.fu:generatorexclude>
            excludes>
        configuration>
        executions>
            execution>
                
                phase>compilephase>
                goals>
                    goal>openapigoal>
                goals>
            execution>
        executions>
    plugin>
    
  2. 編寫smart-doc.json文件

    {
      // 參考文檔:https://smart-doc-group.github.io/#/zh-cn/start/quickstart
      "outPath": "D:\\111",
    
      "coverOld": true,
      "allInOne": true, // 是否將文檔合并到一個文件中,一般推薦為true
      "createDebugPage": true,//@since 2.0.0 smart-doc支持創建可以測試的html頁面,僅在AllInOne模式中起作用。
      "isStrict": false, //是否開啟嚴格模式
      // controller包過濾,多個包用英文逗號隔開
      "packageFilters": "com.fu.system.controller.*",
      "projectName": "system",
      "sortByTitle": true, // 接口排序
      "ignoreRequestParams":[ //忽略請求參數對象,把不想生成文檔的參數對象屏蔽掉,@since 1.9.2
        "javax.servlet.http.HttpServletRequest",
        "javax.servlet.http.HttpServletResponse",
        "javax.servlet.http.HttpSession"
       ]
    }
    
  3. 運行這個插件,如果很熟悉mvn命令,在命令行運行它也行;可以生成openapi、postman、html、Markdown等各種格式的文檔

    圖片

關于pom 和 smart-doc.json 的配置,具體配置可前往官方文檔查看:

https://smart-doc-group.github.io/#/zh-cn/?id=smart-doc

文檔自動化

如果它不能和swagger一樣,自動部署文檔,還得手動,那也不會來推薦這個了。

官方推薦方式:smart-doc + Torna (http://torna.cn/) 組成行業領先的文檔生成和管理解決方案,使用smart-doc無侵入完成Java源代碼分析和提取注釋生成API文檔,自動將文檔推送到Torna企業級接口文檔管理平臺。

需要額外部署一個 Torna 文檔接口服務,類似 yapi;很多企業也都是單獨部署的接口文檔服務。

可以看出來界面比swagger好太多了

圖片

了不起這里給大家另一種方案,本地自動部署,smart-doc + apifox(postman應該也可以)

apifox -> 接口導入 -> 自動同步

圖片

圖片

這個數據源URL可以直接配置為 file:///D:/111/openapi.json,在你配置pom的時候,直接配置成編譯項目時生成 openapi格式的文檔,就可以自動部署到apifox,完美~

小結

今天了不起對這個smart-doc就介紹到這里了,感興趣的小伙伴可以用起來了,對代碼0侵入,簡直太適合我這種強迫癥患者了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 接口
    +關注

    關注

    33

    文章

    8967

    瀏覽量

    153346
  • API
    API
    +關注

    關注

    2

    文章

    1566

    瀏覽量

    63648
  • SMART
    +關注

    關注

    3

    文章

    229

    瀏覽量

    45320
  • 源代碼
    +關注

    關注

    96

    文章

    2952

    瀏覽量

    68035
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    藍牙BR/EDR 和Bluetooth Smart的十大重要區別

    (藍牙基本速率/增強數據率)和Bluetooth Smart 技術。本文將全面解析這兩種技術之間的區別,加深你對藍牙技術的了解!
    發表于 12-08 17:20 ?1.7w次閱讀
    藍牙BR/EDR 和Bluetooth <b class='flag-5'>Smart</b>的十大重要<b class='flag-5'>區別</b>

    swaggersmart-doc區別

    smart-doc簡介 今天了不起給大家推薦一個技術:smart-doc,看名字就知道,它是 智能-文檔。直接分析代碼,根據代碼含義生成文檔(開個玩笑,它還沒有那么智能);其實它是利用的注釋,來生成文檔,還是需要寫注釋的。 官方介紹:
    的頭像 發表于 09-30 10:01 ?729次閱讀
    <b class='flag-5'>swagger</b>和<b class='flag-5'>smart-doc</b>的<b class='flag-5'>區別</b>

    藍牙BR/EDR和Bluetooth Smart區別在哪里?

    藍牙BR/EDR和Bluetooth Smart區別在哪里?
    發表于 05-20 06:49

    單片機原理與應用DOC

    單片機原理與應用DOC
    發表于 03-21 20:28 ?59次下載

    TM-CIA與TMvideoDVR通訊協議.doc

    TM-CIA與TMvideoDVR通訊協議.doc
    發表于 04-05 00:00 ?23次下載

    數字電子技術基礎教案.doc下載

    數字電子技術基礎教案.doc 緒論.doc
    發表于 05-27 09:43 ?0次下載

    常用晶振型號.doc

    常用晶振型號.doc  帶寬又叫頻寬是指在固定的的時間可傳輸的資料數量,亦即在傳輸管道中可以傳遞數據
    發表于 02-09 14:51 ?195次下載

    doc文件用什么打開

    doc文件用什么打開 doc即微軟件公司的word文檔格式,這個問題算是初學電腦者的問題了。現在介紹一下打開軟件及方法。 首先當然是用微軟件公
    發表于 11-13 16:14 ?6.1w次閱讀
    <b class='flag-5'>doc</b>文件用什么打開

    PHPExcel_1.8.0_doc

    PHPExcel_1.8.0_doc,感興趣的可以看看。
    發表于 08-24 18:31 ?2次下載

    實用Altium Designer使用教程【DOC

    實用Altium Designer使用教程【DOC
    發表于 01-22 13:38 ?112次下載

    開關電源原理及分類.doc

    開關電源原理及分類.doc(電源技術在線作業)-開關電源原理及分類.doc
    發表于 08-04 16:26 ?18次下載
    開關電源原理及分類.<b class='flag-5'>doc</b>

    如何搭建 Swagger API文檔平臺

    , TurnAPI , Swagger 。今天我就來教大家如何使用 Swagger 搭建 API 文檔,并且配置權限使用。畢竟開發文檔還是內容使用的為好,萬一上線到生產環境,沒有關swagger 又沒有
    的頭像 發表于 10-09 15:37 ?1131次閱讀
    如何搭建 <b class='flag-5'>Swagger</b> API文檔平臺

    LED與OLED的區別

    電子發燒友網站提供《LED與OLED的區別.doc》資料免費下載
    發表于 11-02 14:42 ?4次下載
    LED與OLED的<b class='flag-5'>區別</b>

    PLC西門子S7-200smart和S7-1200的區別

    PLC西門子S7-200smart和S7-1200的區別? 西門子S7-200 smart和S7-1200是西門子公司推出的兩個PLC產品系列,用于工業自動化控制系統。雖然它們都屬于西門子的S7系列
    的頭像 發表于 11-17 11:41 ?1.4w次閱讀

    DDR2與DDR的區別

    電子發燒友網站提供《DDR2與DDR的區別.doc》資料免費下載
    發表于 03-07 14:58 ?0次下載
    主站蜘蛛池模板: 国产成人精品免费视频大全可播放的 | 国内黄色录像 | 6080伦理久久精品亚洲 | 男人在线网站 | 美女张开腿露尿口给男人亲 | 5151hh四虎国产精品 | 午夜啪啪网站 | 亚洲国产成人精品青青草原100 | 亚洲va中文va欧美va爽爽 | 永久免费的拍拍拍网站 | 国产午夜视频在线观看 | 娇妻被黑人蹂躏 | 91福利国产在线观看网站 | 夜夜摸夜夜操 | 国产精品久久精品福利网站 | 天天爽天天爽天天片a久久网 | 欧美黄色片免费观看 | 狠狠久| 四虎影院永久免费 | 亚洲欧美日本视频 | 美女和帅哥在床上玩的不可描述 | www激情| 色久天| 91精品福利视频 | 国内精品视频免费观看 | 免费国产不卡午夜福在线观看 | 国产三级高清 | 人人人人草| 亚洲成人在线网站 | 午夜福利123 | 你懂的免费 | 97午夜理伦片在线影院 | 韩国理伦片在线观看2828 | 亚洲免费人成在线视频观看 | 91极品女神私人尤物在线播放 | 天堂男人网 | 老逼影院| 俺要操 | 1024手机看片国产 | 日韩精品网址 | 欧美日韩一卡2卡三卡4卡新区 |