Java非侵入式API接口文檔工具apigcc用法詳解
一個(gè)非侵入的api編譯、收集、Rest文檔生成工具。工具通過(guò)分析代碼和注釋?zhuān)@取文檔信息,生成RestDoc文檔
前言
程序員一直以來(lái)都有一個(gè)煩惱,只想寫(xiě)代碼,不想寫(xiě)文檔。代碼就表達(dá)了我的思想和靈魂。
Python提出了一個(gè)方案,叫docstring,來(lái)試圖解決這個(gè)問(wèn)題。即編寫(xiě)代碼,同時(shí)也能寫(xiě)出文檔,保持代碼和文檔的一致。docstring說(shuō)白了就是一堆代碼中的注釋。Python的docstring可以通過(guò)help函數(shù)直接輸出一份有格式的文檔,本工具的思想與此類(lèi)似。
代碼即文檔
Apigcc是一個(gè)非侵入的RestDoc文檔生成工具。工具通過(guò)分析代碼和注釋?zhuān)@取文檔信息,生成RestDoc文檔。
有這樣一段代碼
/** * 歡迎使用Apigcc * @index 1 */@RestControllerpublic class HelloController { /** * 示例接口 * @param name 名稱(chēng) * @return */ @RequestMapping('/greeting') public HelloDTO greeting(@RequestParam(defaultValue='apigcc') String name) { return new HelloDTO('hello '+name); }}
使用方式
apiggs-maven-plugin
easy use apigcc with maven
安裝
<plugin> <groupId>com.github.apiggs</groupId> <artifactId>apiggs-maven-plugin</artifactId> <version><!-- 替換為上方版本號(hào) --></version> <executions> <execution> <phase>compile</phase> <goals><goal>apiggs</goal> </goals> </execution> </executions> <configuration> <!-- options in there --> </configuration></plugin>
when you compile source code, apiggs will build rest doc.
options
id 項(xiàng)目id,生成id.html文件 title 文檔標(biāo)題 description 文檔描述 production 輸出文件夾,默認(rèn)為 apiggs out 輸出目錄,默認(rèn)為 target source 源碼目錄 dependency 源碼依賴(lài)的代碼目錄,以逗號(hào)隔開(kāi) jar 源碼依賴(lài)的jar包目錄,以逗號(hào)隔開(kāi) ignore 忽略某些類(lèi)型 version 文檔版本號(hào)執(zhí)行方法:
查看API文檔:
另外,也可以放入容器遠(yuǎn)程訪(fǎng)問(wèn),方法如下:
這里提供了一個(gè)已打好的jar
運(yùn)行項(xiàng)目
gradlew buildcd servicebuildlibsjava -jar apigcc-hub-{version}.jar
瀏覽器訪(fǎng)問(wèn)http://127.0.0.1:8080
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python使用ctypes庫(kù)調(diào)用DLL動(dòng)態(tài)鏈接庫(kù)2. JavaScript中的AOP編程的基本實(shí)現(xiàn)3. PHP VS ASP4. 淺談JavaScript中等號(hào)、雙等號(hào)、 三等號(hào)的區(qū)別5. Python如何進(jìn)行時(shí)間處理6. Spring security 自定義過(guò)濾器實(shí)現(xiàn)Json參數(shù)傳遞并兼容表單參數(shù)(實(shí)例代碼)7. python裝飾器三種裝飾模式的簡(jiǎn)單分析8. 詳解Python模塊化編程與裝飾器9. JavaScript Reduce使用詳解10. 詳解JS ES6編碼規(guī)范
