Spring Boot 第12篇:Springboot集成apidoc

转载 2018年04月17日 09:15:31

首先声明下,apidoc是基于注释来生成文档的,它不基于任何框架,而且支持大多数编程语言,为了springboot系列的完整性,所以标了个题。

一、apidoc简介

apidoc通过在你代码的注释来生成api文档的。它对代码没有侵入性,只需要你写好相关的注释即可,并且它仅通过写简单的配置就可以生成高颜值的api接口页面。它基于node.js,所以你需要安装node.js环境。node.js安装,点击这里。这里就不介绍。

二、准备工作

安装完node.js安装api.doc,它的项目源码:https://github.com/apidoc/apidoc

通过命令安装:

npm install apidoc -g

三、注释怎么写

  • @api
@api {method} path [title]

method:请求方法,
path:请求路径 
title(可选):标题
  • @apiDescription
@apiDescription text
text说明
  • @apiError
@apiError [(group)] [{type}] field [description]

(group)(可选):参数将以这个名称分组,不设置的话,默认是Error 4xx 
{type}(可选):返回值类型,例如:{Boolean}, {Number}, {String}, {Object}, {String[]} 
field:返回值字段名称 
descriptionoptional(可选):返回值字段说明
  • @apiGroup
@apiGroup name
name:组名称,也是导航的标题

更多注释,参见官方文档:http://apidocjs.com/#params

四、写给栗子

首先写配置文件

在项目的主目录新建一个apidoc.json文件:

{
  "name": "example",
  "version": "0.1.0",
  "description": "A basic apiDoc example"
}

更多配置参考:http://apidocjs.com/#configuration

写个注释:

    /**
     * @api {POST} /register 注册用户
     * @apiGroup Users
     * @apiVersion 0.0.1
     * @apiDescription 用于注册用户
     * @apiParam {String} account 用户账户名
     * @apiParam {String} password 密码
     * @apiParam {String} mobile 手机号
     * @apiParam {int} vip = 0  是否注册Vip身份 0 普通用户 1 Vip用户
     * @apiParam {String} [recommend] 邀请码
     * @apiParamExample {json} 请求样例:
     *                ?account=sodlinken&password=11223344&mobile=13739554137&vip=0&recommend=
     * @apiSuccess (200) {String} msg 信息
     * @apiSuccess (200) {int} code 0 代表无错误 1代表有错误
     * @apiSuccessExample {json} 返回样例:
     *                {"code":"0","msg":"注册成功"}
     */

用apidoc命令生成文档界面

先cd到工程的外层目录,并在外层目建个输出文档的目录,我建的是docapi。

输命令:

apidoc -i chapter4/ -o apidoc/

-i 输入目录 -o 输出目录

chapter4是我的工程名。

可以看到在apidoc目录生成了很多文件:

img

打开index.html,可以看到文档页面:

img

五、参考资料

apidoc

apidocjs.com

使用apidoc 生成Restful web Api文档

SpringBoot非官方教程 | 第十二篇:springboot集成apidoc

首先声明下,apidoc是基于注释来生成文档的,它不基于任何框架,而且支持大多数编程语言,为了springboot系列的完整性,所以标了个题。一、apidoc简介apidoc通过在你代码的注释来生成a...
  • forezp
  • forezp
  • 2017-04-30 16:18:51
  • 26897

spring-boot集成springfox(Swagger) (ApiDoc接口文档)

Springfox的前身是swagger-springmvc,是一个开源的API doc框架,可以将我们的Controller的方法以文档的形式展现,基于Swagger。官网地址:http://spr...
  • u013821825
  • u013821825
  • 2016-10-23 23:40:37
  • 3020

10.springboot使用apidoc生成pai

1.介绍 apidoc是基于注释生成api,不基于任何一种框架,主要是对代码没有侵入性。基于node.js环境所以需要先安装node.js 2.注释介绍 @api @api {method} pa...
  • qq_34448345
  • qq_34448345
  • 2017-12-13 19:48:31
  • 92

SpringBoot-SpringSecurity集成-修定

原文地址:http://blog.csdn.net/ABAP_Brave/article/details/53032694原文的 pom.xml 文件不全。 原文没有给定启动类。 对于原文的缺失此...
  • u012373815
  • u012373815
  • 2016-12-27 18:34:25
  • 1283

SpringBoot之集成Redis NoSql数据库

本篇文章只是简单的介绍一下SpringBoot集成Redis的使用(不包括Redis集群的使用),算是一篇入门文章吧。下面我们进入正题。 前期准备 我们现在pom.xml中引入redis的配置: ...
  • zknxx
  • zknxx
  • 2016-08-21 15:51:05
  • 1254

112. Spring Boot 定时任务升级篇【从零开始学Spring Boot】

【原创文章,转载请注明出处】 【本篇博客,有配套视频,视频地址:《Spring Boot定时任务》,公众号中点击下面的阅读原文,视频中讲解的更详细】 需求缘起:在之前的一篇文章中就介绍过《Spring...
  • zmken497300
  • zmken497300
  • 2017-03-28 16:13:54
  • 754

Spring boot 集成Dubbox

前言因为工作原因,需要在项目中集成dubbo,所以去查询dubbo相关文档,发现dubbo目前已经不更新了,所以把目光投向了dubbox,dubbox是当当网基于dubbo二次开发的一个项目,dubb...
  • wantnrun
  • wantnrun
  • 2017-05-26 13:51:43
  • 1125

Activiti学习之spring boot 与activiti整合

spring boot 与activiti整合教程
  • chq00788
  • chq00788
  • 2017-07-22 10:22:45
  • 13590

springboot集成Redis

springboot集成Redis前言Redis是目前使用的非常广泛的内存数据库,相比memcached,它支持更加丰富的数据类型。本来简要介绍在springboot中使用redis的方法。...
  • qincidong
  • qincidong
  • 2017-08-04 16:09:52
  • 4999

SpringBoot-SpringSecurity集成

SpringSecurity的东西还是比较多的,为了尽可能的把项目中用得到的知识都列举出来,近期应该会持续更新SpringBoot-SpringSecurity相关知识首先我们说一下SpringBoo...
  • ABAP_Brave
  • ABAP_Brave
  • 2016-11-04 10:51:47
  • 7821
收藏助手
不良信息举报
您举报文章:Spring Boot 第12篇:Springboot集成apidoc
举报原因:
原因补充:

(最多只允许输入30个字)