还在用 Swagger(丝袜哥)生成接口文档?我推荐你试试它。。。
作者:小鱼儿511
https://blog.csdn.net/dongbeiou/article/details/106771453
JApiDocs是一个无需额外注解、开箱即用的SpringBoot接口文档生成工具。
编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后端代码都是自己写的,否则API文档将是前后端协作中一个不可或缺的沟通界面。
既然不可避免,那就想办法弄个轮子吧。人生苦短,必须偷懒。
无图无真相,生成文档的效果如下:
相比Swagger要写一堆注解,Spring RestDocs需要写测试用例,才能生成API文档。JApiDocs 具有无痛集成的特点,你只需花几分钟就能知道它怎么用了。
快速开始
要使得JApiDcos正确工作,你写的代码应该是像下面的样子的:
/*** 用户接口*/
@RequestMapping("/api/user/")
@RestController
public class UserController {/*** 用户列表* @param listForm*/@RequestMapping(path = "list", method = {RequestMethod.GET, RequestMethod.POST} )public ApiResult<PageResult<UserVO>> list(UserListForm listForm){return null;}/*** 保存用户* @param userForm*/@PostMapping(path = "save")public ApiResult<UserVO> saveUser(@RequestBody UserForm userForm){return null;}
}
我们给Controller类和方法加上必要的注释,给接口方法返回相关的对象类型。是的,这样JApiDocs就能解析到相关的接口信息了,就跟我们平时写的代码是差不多的,但要注意,你要通过@param
来告诉JApiDocs接口的参数,但在IDE的帮助下,这个工作将是轻松愉悦的:
然后你在任意一个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); // 执行生成文档
接下来你只管好好写代码,生成Api文档的工作就可以交给JApiDocs了,你不需要再为额外编写和维护文档而烦恼。
功能特性
1、代码即文档
JApiDocs是通过直接解析SpringBoot的源码语法来工作的,所以只要Controller的语法符合一定的代码规范,有合理的注释,就可以直接导出文档。
2、支持导出HTML
便捷的导航和接口查看界面;可本地预览,或者部署到HTTP服务器。推荐部署到服务器,方便前后端展开协作。
3、同步导出客户端Model代码
支持导出Android端的 Java 和iOS端的 Object C Model代码,减少前端程序员的重复编码工作。
4、更多特性
支持接口搜索;支持不同版本和英文文档;自定义扩展等。
简洁的文档
再好用的东西,如果没有文档说明,别人也无从入手。为了让大家尽快上手,JApiDocs准备了一份极简的文档说明,确保你在几分钟就能用上JApiDocs。
花5分钟不到就能认识一个提高工作效率的工具,让你把更多的时间花在更加有价值的事情上,你确认不看一下吗?
“
仓库地址:https://github.com/YeDaxia/JApiDocs
“中文文档:https://japidocs.agilestudio.cn/#/zh-cn/
福利时间
GIFT TIME
一月一度的送书环节又来了
感谢大家一直以来的陪伴与支持
今天给大家赠送10本书
由北京大学出版社赞助
也欢迎大家自行购买
Java并发编程技术体系化讲解,BAT级别高并发项目深度剖析,领略大咖的实战代码设计艺术。
本次送书不需要评论,也不需要转发
采用最公平的抽奖方式。
关注公众号:程序员面试现场
公众号后台回复:送书
即可参与抽奖
往期推荐
想理解Java的IO,不要从操作系统开始说起的都是耍流氓...
阿里开源那个牛哄哄问题排查工具竟然不会用?最佳实践来了!
性能优越的轻量级日志收集工具,微软、亚马逊都在用!
本文由“壹伴编辑器”提供技术支
直面Java第329期:哪个命令可以监控虚拟机各种运行状态信息?
深入并发第013期:拓展synchronized——锁优化
如果你喜欢本文,
请长按二维码,关注 Hollis.
转发至朋友圈,是对我最大的支持。
点个 在看
喜欢是一种感觉
在看是一种支持
↘↘↘
还在用 Swagger(丝袜哥)生成接口文档?我推荐你试试它。。。相关推荐
- 实体类 接口_spring-boot-route(五)整合Swagger生成接口文档
目前,大多数公司都采用了前后端分离的开发模式,为了解决前后端人员的沟通问题,后端人员在开发接口的时候会选择使用swagger2来生成对应的接口文档,swagger2提供了强大的页面调试功能,这样可以有 ...
- [Golang梦工厂]一个小项目带你学会GIN框架、JWT鉴权、swagger生成接口文档,看这一篇就够了
前言 哈喽,大家好,我是asong,这是我的第八篇原创文章.听说你们还不会jwt.swagger,所以我带来一个入门级别的小项目.实现用户登陆.修改密码的操作.使用GIN(后台回复Golang梦工厂: ...
- idea swagger生成接口文档_Spring Boot(九)Swagger2自动生成接口文档和Mock模拟数据...
一.简介 在当下这个前后端分离的技术趋势下,前端工程师过度依赖后端工程师的接口和数据,给开发带来了两大问题: 问题一.后端接口查看难:要怎么调用?参数怎么传递?有几个参数?参数都代表什么含义? 问题二 ...
- Swagger的生成接口文档
Swagger的生成接口文档 一.背景 前后端之间约定好使用Restful风格的API进行数据通信,此时如果我们能够提供一份清晰明了的接口文档,能够极大的提高效率,既满足我们输出文档的需要又能随代码的 ...
- 通过Swagger快速生成接口文档
1.添加依赖: 在pom中添加swagger的依赖,这里使用的swagger版本为2.7.0,springboot相应版本为2.0.3,jdk1.8 示例如下: <swagger.version ...
- 【转】Postman 生成接口文档
引言 几个朋友想做一个前后端分离的项目,接口文档的重要性那是不言而喻的.生成接口文档的方法真的太多了,Yapi.Swagger等等.但是想公网上访问接口文档并修改的话,还得购买服务器,部署上去.穷码农 ...
- SpringBoot 如何生成接口文档,老鸟们都这么玩的!
为什么要用Swagger ? " 作为一名程序员,我们最讨厌两件事:1. 别人不写注释.2. 自己写注释. 而作为一名接口开发者,我们同样讨厌两件事:1. 别人不写接口文档,文档不及时更新. ...
- SpringBoot 整合Smart-doc生成接口文档
之前我在SpringBoot老鸟系列中专门花了大量的篇幅详细介绍如何集成Swagger,以及如何对Swagger进行扩展让其支持接口参数分组功能.详情可见:SpringBoot 如何生成接口文档,老鸟 ...
- Go 项目自动生成接口文档
CSDN 中文章不一定能及时更新,欢迎关注我的博客查看最新版本:许盛的博客 背景 如何让后端同学愉快地写接口文档,是个老大难问题. 使用 GraphQL 当接口标准,倒是省了接口文档的问题,连前端代码 ...
- drf 安装_drf 生成接口文档
REST framework可以自动帮助我们生成接口文档.接口文档以网页的方式呈现. 自动接口文档能生成的是继承自APIView及其子类的视图. 一.安装依赖 REST framewrok生成接口文档 ...
最新文章
- 来,锁个痛快(6)—— 与lock相关的视图和简单实验
- 双系统装完只能u盘启动_苹果电脑安装双系统,切换MacOx系统和Windows系统!
- 厉害了,淘宝千万并发,14 次架构演进…
- JavaScript基础笔记
- [NHibernate]获取分组查询的记录总数
- 深度学习(八)caffe源码学习-未完待续
- jsp 中select 下拉选择框 el 三元运算符 如何选中与不选中
- Linux RTC驱动模型分析之rtc-sysfs.c
- Excel 中VBA脚本的简单应用
- 小米笔记本Air 13.3 指纹版安装黑苹果 macOS High Sierra 10.13 教程
- 0x800700b7 linux,0x800700b7解决方法
- C#圆通订单创建接口测试类
- 【推荐】网络安全学习路线和资料分享
- java 企业付款到零钱 微信提现功能讲解
- (python)bing搜索引擎API接入测试
- beacon帧主要结构
- 虚拟服务器存储扩容方法,虚拟化数据中心存储扩容方案
- xshell免费版下载教程
- 机器学习之LSI:文本主题模型之潜在语义分析(LSI)
- Kotlin版 极简 干货集中营 APP