zoukankan      html  css  js  c++  java
  • Java非侵入式API接口即文档工具apigcc

    一个非侵入的api编译、收集、Rest文档生成工具。工具通过分析代码和注释,获取文档信息,生成RestDoc文档

    前言

    程序员一直以来都有一个烦恼,只想写代码,不想写文档。代码就表达了我的思想和灵魂。

    Python提出了一个方案,叫docstring,来试图解决这个问题。即编写代码,同时也能写出文档,保持代码和文档的一致。docstring说白了就是一堆代码中的注释。Python的docstring可以通过help函数直接输出一份有格式的文档,本工具的思想与此类似。

    代码即文档

    Apigcc是一个非侵入的RestDoc文档生成工具。工具通过分析代码和注释,获取文档信息,生成RestDoc文档。

    有这样一段代码

    /**
     * 欢迎使用Apigcc
     * @index 1
     */
    @RestController
    public class HelloController {
    
        /**
         * 示例接口
         * @param name 名称
         * @return
         */
        @RequestMapping("/greeting")
        public HelloDTO greeting(@RequestParam(defaultValue="apigcc") String name) {
            return new HelloDTO("hello "+name);
        }
    
    }

    生成文档效果

    示例

    使用方式

    apiggs-maven-plugin

    easy use apigcc with maven

    install

    <plugin>
        <groupId>com.github.apiggs</groupId>
        <artifactId>apiggs-maven-plugin</artifactId>
        <version><!-- 替换为上方版本号 --></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

    1. id 项目id,生成id.html文件
    2. title 文档标题
    3. description 文档描述
    4. production 输出文件夹,默认为 apiggs
    5. out 输出目录,默认为 target
    6. source 源码目录
    7. dependency 源码依赖的代码目录,以逗号隔开
    8. jar 源码依赖的jar包目录,以逗号隔开
    9. ignore 忽略某些类型
    10. version 文档版本号

    执行方法:

     查看API文档:

    另外,也可以放入容器远程访问,方法如下:

    这里提供了一个已打好的jar

    运行项目

    gradlew build
    cd serviceuildlibs
    java -jar apigcc-hub-{version}.jar

    浏览器访问 http://127.0.0.1:8080

    详情请参考:apigcc

  • 相关阅读:
    HTML+CSS基础
    学习C++——实践者的方法(转整)
    招聘要求看技术发展
    笔记本自建无线wifi
    sortAlgorithms
    耐得住寂寞,拥得了繁华
    C++函数重载实现原理浅析
    程序员指南
    tf.image.non_max_suppression()
    函数 不定长参数
  • 原文地址:https://www.cnblogs.com/barrywxx/p/11784267.html
Copyright © 2011-2022 走看看