日常工作记录——java中apidoc的应用(代码片段)

ntfblogs ntfblogs     2022-12-16     119

关键词:

一、APIDOC是什么?

简单通俗点说,apidoc是一款自动生成API接口文档的工具。它支持多种语言的接口文档生成,如C#、Java、JavaScript、PHP、Python等,详情可参考官方文档说明。java代码中可以通过注解来实现apidoc。

二、APIDOC安装

  1.因为apidoc依赖于node.js,所以首先要安装node.js

 2. 安装apidoc

cmd打开运行命令框,输入命令npm install apidoc -g即可安装。

使用命令apidoc -h可验证是否安装成功。

 三、APIDOC使用

 1. 配置apidoc.json

在项目中创建apidoc.json文件,位置建议在项目根目录(src目录平级),也可自选。

apidoc.json内容示例如下:

1 
2   "name": "项目名称",
3   "version": "项目版本",
4   "description": "项目描述",
5   "title": "浏览器标题",
6   "url" : "api路径前缀,会自动拼接到@api 路径前,可以设置为空串"
7 

 具体参数名配置及含义可参考官方文档

中文参考文档

 2. 接口增加apidoc注解

具体参数名配置及含义可参考官方文档

中文参考文档

  3. 生成接口文档

cmd打开运行命令框,cd到apidoc.json目录下,使用apidoc -i src/ -o apidoc/生成HTML格式接口文档 

指令参数详情列表:

参数 描述
 -h, --help  查看帮助文档
 -f --file-filters

指定读取文件的文件名过滤正则表达式(可指定多个)例如: apidoc -f “.*\\.js"−f".∗.ts " -f ".*\\\\.ts"−f".∗.ts” 意为只读取后缀名为js和ts的文件默认值:.clj .cls .coffee .cpp .cs .dart .erl .exs? .go .groovy .ino? .java .js .jsx .kt .litcoffee lua .p .php? .pl .pm .py .rb .scala .ts .vue

 -e --exclude-filters  指定不读取的文件名过滤正则表达式(可指定多个)例如:apidoc -e “.*\\.js$” 意为不读取后缀名为js的文件默认:’’
 -i, --input  指定读取源文件的目录例如:apidoc -i myapp/ 意为读取myapp/目录下面的源文件默认值:./
 -o, --output  指定输出文档的目录例如:apidoc -o doc/ 意为输出文档到doc目录下默认值:./doc/
 -t, --template  指定输出的模板文件例如:apidoc -t mytemplate/默认:path.join(__dirname, ‘…/template/’)(使用默认模板)
 -c, --config  指定包含配置文件(apidoc.json)的目录例如:apidoc -c config/默认:./
 -p, --private  输出的文档中是否包含私有api例如:apidoc -p true 默认:false
 -v, --verbose  是否输出详细的debug信息例如:apidoc -v true默认:false

apidoc官方文档(翻译版)使用文档(代码片段)

参考官方文档:http://apidocjs.com/一、apidoc简介apidoc是一款可以有源代码中的注释直接自动生成api接口文档的工具,它几乎支持目前主流的所有风格的注释。例如:Javadoc风格注释(可以在C#,Go,Dart,Java,JavaScript,PHP,TypeScript等语言中使用... 查看详情

登录java应用程序

...时间】:2012-08-2805:27:45【问题描述】:我创建了一个单例记录器以在我的java应用程序中使用。连接到hsql独立数据库之前的所有语句都工作正常,即消息正在被记录。但是连接到数据库之后的日志记录语句没有被记录。如果我删... 查看详情

日常学习记录java常用线程并发类的应用实例(代码片段)

...程并发类CountDownLatch、CyclicBarrier、Semaphore的应用实例进行记录和介绍。CountDownLatchCountDownLatch(倒计时器):用来协调多个线程之间的同步。比如在主线程中新建n个子线程,那CountDownLatch的参数需要设置的和线程数一致,... 查看详情

定时任务调度工作(学习记录一)(代码片段)

Timer是jdk自带的,不用引入其他jar包,而Quartz需要引入前者简单,功能简洁,后者复杂,功能繁多。实际应用中,只用关注Timer与TimerTask 创建两个类:首先是MyTimerTask,它需要继承TimerTask,这个是java.util下的publicclassMyTimerTaskexte... 查看详情

effectivejava在工作中的应用总结(代码片段)

简介: 《EffectiveJava》是一本经典的Java学习宝典,值得每位Java开发者阅读。笔者将书中和平日工作较密切的知识点做了部分总结。作者|宜秋来源|阿里技术公众号《EffectiveJava》是一本经典的Java学习宝典,值得每位Jav... 查看详情

在应用程序中记录 GC 信息

】在应用程序中记录GC信息【英文标题】:LoggingGCinformationintheapplication【发布时间】:2012-04-1111:34:32【问题描述】:有没有办法将垃圾收集信息(例如-XX:+PrintGCDetails或-verbose:gc的输出)转发到Java应用程序中的记录器(在我的例子... 查看详情

记录我开发工作中遇到http跨域和option请求的一个坑(代码片段)

...篇文章把今天工作中遇到的HTTP跨域和OPTION请求的一个坑记录下来。场景是我需要在部署在域名a的Web应用里用JavaScript去消费一个部署在域名b的服务器上的服务。域名b上的服务也是我开发的,因此我将域名a加到了该服务的HTTP响... 查看详情

项目后续-日常应用代码记录(代码片段)

一、代码实现1.数组转换成ListString[]deviceIdAy=buildingDto.getChannelId().split(Symbol.COMMA);//设备idList<String>deviceIdList=Arrays.asList(deviceIdAy);2.List转换成数组List<String>gatemateIdList=buildingDao.listBuildingDeviceId(buildingDeviceCond);String[]deviceIdAy=ga... 查看详情

markdown工作中使用的django的一些记录(代码片段)

查看详情

hibernate工作原理及为啥要用

...术。所谓持久化对象(PersistentObject)即封装了数据库表记录的对象。程序中使用的对象是短暂的状态,当不使用时java的GC机制会自动释放不用的对象。而利用hibernate便可以实现对象的持久化,将对象保存到数据库中。Hibernate映... 查看详情

工作中的记录(代码片段)

在从数据库或者其他来源获取到对象后,习惯性的要对对象做判空处理,不然可能在取对象的时候报空指针。在比较List对象的大小按照某找顺序排序的时候一定要实现的是  implementsComparator<TrackWeekReportModel>   publ... 查看详情

python的apidoc操作(代码片段)

目录前言apidoc的安装Python文件定义接口信息apidoc.json文件生成apidoc网页文件前言操作系统win10时间2019年02月Python版本:Python3.5.2Nodejs版本:nodev8.9.3参考网址1参考网址2参考网址3apidoc的安装npminstallapidoc-g-g参数表示全局安装,这样哪... 查看详情

日常技巧记录-2018.08(代码片段)

日常技巧记录-2018.08如果Docker的Log中不能显示Pythonprint的内容,解决方法:在Dockerfile中添加一行:1.ENVPYTHONUNBUFFERED=0添加以后就可以在Log中看到Pythonprint出来的log了。Docker镜像Standalone-chrome找不到Chrome的问题,解决办法:如果是普... 查看详情

Java - 记录和捕获

】Java-记录和捕获【英文标题】:Java-recordingandcapturing【发布时间】:2016-04-2612:34:05【问题描述】:我正在开发一个小型实时应用程序来记录声波。它有两个模块:录音,听力。这是它应该如何工作的:程序开始收听。声波到达... 查看详情

如何在 Java 应用程序的 Vertx 框架中记录请求和响应

】如何在Java应用程序的Vertx框架中记录请求和响应【英文标题】:HowtologrequestandresponseinVertxframeworkforJavaApplication【发布时间】:2021-12-2913:17:50【问题描述】:我试过这个https://github.com/zalando/logbook但它只适用于基于弹簧的应用程... 查看详情

日常记录(代码片段)

问题1:  mybatis拼接多条语句同时执行,报错,想在mapper的一个更新节点进行多条update语句的操作:  <updateid="cleanUserByPhone"parameterType="java.lang.String">  updateusersetvalid_status=1wheremobile_phone=#mobilePhone;  updateuse 查看详情

记录一些工作学习中碰到的api,小技巧(代码片段)

  平时学习中碰到过一些很有意思的代码写法。记录下来,提升下Level。当然由于我是个新手,可能有少见多怪之嫌。 使用Pattern类 匹配正则表达式规则intnum=1;StringREG="[0-9]+";//填入需要的正则表达式规则Patternpattern=Patter... 查看详情

qtp-工作原理

...的属性、操作等。录制的时候,QTP将操作过的所有对象都记录下来,保存在对象库Objectrepository中,记录的形式是一个逻辑名加上若干识别属性。因此,一个完整的脚本测试应该包括两部分:一个是测试脚本的代码,一个是对象... 查看详情