SpringBoot集成JApiDocs实现自动生成接口文档
一、概念
JApiDocs 是一个符合 Java 编程习惯的 Api 文档生成工具。最大程度地利用 Java 的语法特性,你只管用心设计好接口,添加必要的注释,JApiDocs 会帮你导出一份漂亮的 Html 文档,并生成相关的 Java 和 Object-C 相关数据模型代码,从此,Android 和 IOS 的同学可以少敲很多代码了,你也不需要费力维护接口文档的变化,只需要维护好你的代码就可以了。
二、特性
- 以一个 Controller 作为一组接口导出到一个 Html 文件中。
- 支持生成 Java 和 Object-C 语言的 Response 模型代码。
- 深度支持 Spring Boot, PlayFramework,JFinal,不需要额外声明路由。
- 支持一般的 Java Web 工程,需要在相关方法添加额外的路由。
- 支持接口声明过时(@Deprecated),方便的文档目录等。
- 支持自定义代码生成模板。
- 支持集成发布到 RAP。
- :new: 支持多模块、泛型。
三、搭建
参考网址: https://japidocs.agilestudio.cn/#/zh-cn/
第一步:添加依赖
maven:
<dependency><groupId>io.github.yedaxia</groupId><artifactId>japidocs</artifactId><version>1.4.2</version>
</dependency>
gradle:
compile 'io.github.yedaxia:japidocs:1.4.2'
第二步:配置参数
你可以在任意一个main入口运行下面的代码:
DocsConfig config = new DocsConfig();
config.setProjectPath("your springboot project path"); // 项目根目录
config.setProjectName("ProjectName"); // 项目名称
config.setApiVersion("V1.0"); // 声明该API的版本
config.setDocsPath("your api docs path"); // 生成API 文档所在目录
config.setAutoGenerate(Boolean.TRUE); // 配置自动生成
Docs.buildHtmlDocs(config); // 执行生成文档
我的配置
package com.kero99.utils;
import io.github.yedaxia.apidocs.Docs;
import io.github.yedaxia.apidocs.DocsConfig;
/*** 接口文档自动生成工具* @author ygc**/
public class DocUtil {public static void main(String[] args) {DocsConfig config = new DocsConfig();// 项目根目录config.setProjectPath("D:\\java\\Eclipse项目\\20200817_V1.0_soilgis"); // 项目名称config.setProjectName("20200817_V1.0_soilgis"); // 声明该API的版本config.setApiVersion("20200817_V1.0_soilgis"); //生成API 文档所在目录config.setDocsPath("C:\\新建文件夹");// 配置自动生成config.setAutoGenerate(Boolean.TRUE); // 执行生成文档Docs.buildHtmlDocs(config); }
}
编码规范
JApiDocs是通过解析Java源码来实现的,要使得JApiDocs正确工作,需要你在项目中的Controller
书写遵循一定的编码规范,需要在注释里面添加@param 否则生成的文档会乱码。
可以参考我的例子
/*** xml查询 通过id查询用户信息* @param id* @return* @author ygc*/@RequestMapping("/queryUserById")@Transactional(propagation=Propagation.SUPPORTS)public List<UserInfo> queryUserById(Integer id) { List<UserInfo> temp=userService.queryUserById(id);if(temp!=null){return temp;}return null;}
四、生成文档
选择文件夹下的index.html并打开
五、生成结果
SpringBoot集成JApiDocs实现自动生成接口文档相关推荐
- 自动生成接口文档之JApiDocs教程
JApiDocs教程 前言 作为一名优秀的程序员来说,由于涉及到要与前端进行对接,所以避免不了的就是写接口文档.写完接口文档,一旦代码返回结果,参数等出现变动,接口文档还得随之改动,十分麻烦,违背了我 ...
- SpringBoot自动生成接口文档
跟大家介绍一个自动生成接口文档的工具包,作者的理念是注释即文档,在写代码的时候写上注释,项目启动后就会生成接口文档,非常方便,省去了Swagger写注解的过程. 仓库地址:https://github ...
- Spring Boot(九)Swagger2自动生成接口文档和Mock模拟数据
一.简介 在当下这个前后端分离的技术趋势下,前端工程师过度依赖后端工程师的接口和数据,给开发带来了两大问题: 问题一.后端接口查看难:要怎么调用?参数怎么传递?有几个参数?参数都代表什么含义? 问题二 ...
- idea swagger生成接口文档_Spring Boot(九)Swagger2自动生成接口文档和Mock模拟数据...
一.简介 在当下这个前后端分离的技术趋势下,前端工程师过度依赖后端工程师的接口和数据,给开发带来了两大问题: 问题一.后端接口查看难:要怎么调用?参数怎么传递?有几个参数?参数都代表什么含义? 问题二 ...
- Django框架深入了解_05 (Django中的缓存、Django解决跨域流程(非简单请求,简单请求)、自动生成接口文档)(二)
二.跨域: 回到顶部 跨域知识介绍: 点我以前博客 跨域解决方法:CORS:跨域资源共享 CORS请求分类(简单请求和非简单请求) 简单请求(simple request):只需要在头信息之中增加一个 ...
- Django框架深入了解_05 (Django中的缓存、Django解决跨域流程(非简单请求,简单请求)、自动生成接口文档)(一)
阅读目录 一.Django中的缓存: 前戏: Django中的几种缓存方式: Django中的缓存应用: 二.跨域: 跨域知识介绍: CORS请求分类(简单请求和非简单请求) 示例: 三.自动生成接口 ...
- java自动生成接口文档
java自动生成接口文档 maven依赖 工具类 展示效果 首页 接口页 在平时的开发过程中必定要写接口文档 作为程序员 最烦的2件事 1.别人让你写接口文档 2.接手别人的项目没有接口文档 由此可见 ...
- DRF 自动生成接口文档
Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...
- Django DRF 自动生成接口文档
文章目录 1. 引子 2. 自动生成接口文档 3. 文档描述说明的定义位置 1. 引子 前端请求的url由谁来写 url 主要有后台来写,写完给前端: 如果后台查询数据,需要借助查询条件才能查询前端需 ...
- RESTful之自动生成接口文档
REST framework可以自动帮助我们生成接口文档.[必须是继承自rest_framework才会自动生成文档] 接口文档以网页的方式呈现. 自动接口文档能生成的是继承自APIView及其子类的 ...
最新文章
- Ubuntu14.04 x64 zabbix 3.0 安装
- 第一个Struts2程序
- C语言获取mysql表数据结构_【数据结构】实现顺序表(c语言)
- 用C++设计一个不能被继承的类
- 内存池和tcmalloc的性能比较
- 开源特训营 - Lesson 4 - 如何运营社区
- matlab 安装glpk,mac上安装GLPK
- C语言实现音乐播放器(Linux madplay)
- linux下下安装jdk-6u45-linux-x64.bin
- 单位阶跃信号是周期信号吗_iPhone12的信号有改观吗?
- 【论文】基于层次化注意力图网络和多视角学习的商品推荐(附论文下载链接)...
- 公司-ofo:ofo
- GBase数据库产品介绍
- 学做‘视频剪辑’攻略
- 激光粒度仪测试原理及详情解答【注解】
- 利用python修改小米运动数据,整个朋友圈都感觉太夸张了
- 2021年茶艺师(中级)考试内容及茶艺师(中级)操作证考试
- Python 变量作用域与函数(4)
- 为什么有的程序员能力一般却能拿到好offer?
- linux下双网卡设置(内外网)