Java非侵入式API接口文档工具apigcc用法详解
作者:BarryW 发布时间:2023-11-24 10:01:00
一个非侵入的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
安装
<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
id 项目id,生成id.html文件
title 文档标题
description 文档描述
production 输出文件夹,默认为 apiggs
out 输出目录,默认为 target
source 源码目录
dependency 源码依赖的代码目录,以逗号隔开
jar 源码依赖的jar包目录,以逗号隔开
ignore 忽略某些类型
version 文档版本号
执行方法:
查看API文档:
另外,也可以放入容器远程访问,方法如下:
这里提供了一个已打好的jar
运行项目
gradlew build
cd service\build\libs
java -jar apigcc-hub-{version}.jar
浏览器访问http://127.0.0.1:8080
来源:https://www.cnblogs.com/barrywxx/p/11784267.html


猜你喜欢
- SimpleDateFormat是处理日期格式转换的类。官方API_1.8关于SimpleDateFormat继承于DateFormate截
- 文件的上传及下载功能是开发人员在日常应用及编程开发中经常会遇到的。正好最近开发需要用到此功能,虽然本人是 Android 开发人员,但还是业
- 这是Hadoop学习全程记录第1篇,在这篇里我将介绍一下如何在Linux下安装Hadoop1.x。先说明一下我的开发环境:虚拟机:VMwar
- VB.NET中的除法运算符有两个:/(浮点除法)、\(整数除法)C#中的除法运算符只有一个:/(除法)VB.NET中的除法运算符与C#中的除
- 今天在用OpenCV实验Image Pyramid的时候发现一个奇怪的问题,就是利用C++函数imread读取图片的时候返回的结果总是空,而
- 今天看到EOE问答里面有这“[Android 界面]NotificationManager 如何使用Bitmap做图标”这样一个问题,在论坛
- 缓存是HTTP协议的一个强大功能,但由于某些原因,它主要用于静态资源,如图像,CSS样式表或JavaScript文件,但是,HTTP缓存不仅
- 工具准备jdk, maven, tomcat9, vscode;上述软件的安装配置在百度就能找到很多教程, 所以此处不详述.(jdk使用1.
- 一、HTTP http请求 一般一个http请求包括以下三个部分: 1 请求方法,如get,pos
- 引入所谓泛型,就是创建一个函数,对所有数据类型都生效。最常见的例子就是运算符,毕竟1+1=2,1.0+1.0=2.0,足以看出+是对多种数据
- 软件生存周期中,涉及代码运行的环节有编码、测试和维护阶段,而一套成熟的代码,在此三个阶段,数据库、日志路径、日志级别、线程池大小等配置一般会
- 1 Android SDK自带的org.json解析解析原理: 基于文档驱动,需要把全部文件读入到内存中,然后遍历所有数据,根据需要检索想要
- 简单说明一下:线程池可以看做容纳线程的容器;一个应用程序最多只能有一个线程池;ThreadPool静态类通过QueueUserWorkIte
- 1.sax方式 /** * 使用sax解析 */ public class SaxParse{ /** * sax解析器 */ privat
- 在IDEA中配置log4j,步骤很简单1.在Maven中加入以下配置<dependency> <groupI
- 前言taptap-developer是一个spring boot框架驱动的纯Grpc服务,所以,只用了四步,移除了web和spring cl
- 在前台请求数据的时候,sql语句一直都是打印到控制台的,有一个想法就是想让它打印到日志里,该如何做呢?见下面的mybatis配置文件:<
- 流程图 * vs过滤器 * 是SpringMVC的技术过滤器的Servlet的技术先过过滤器,过滤器过完才到DispatcherServle
- Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象,和代表响应的respon
- C语言字符串大小比较#include <stdio.h>#include <string.h>int fun(cha