还在用Swagger生成接口文档?我推荐你试试它.....

news/2024/7/3 17:07:54

点击上方“方志朋”,选择“设为星标”

回复”666“获取新整理的面试文章

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/

热门内容:一张900w的数据表,怎么把原先要花费17s执行的SQL优化到300ms?
学会 IDEA REST Client后,postman就可以丢掉了...
为什么老外不愿意用 MyBatis?微服务海量日志怎么处理,推荐你试试这款工具....最近面试BAT,整理一份面试资料《Java面试BAT通关手册》,覆盖了Java核心技术、JVM、Java并发、SSM、微服务、数据库、数据结构等等。获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。
明天见(。・ω・。)ノ♡

http://lihuaxi.xjx100.cn/news/272863.html

相关文章

servlet_2

后台处理逻辑 package com.fgy;import java.io.IOException;import java.util.Enumeration;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import …

黑科技抗疫,Python开发者大集结!

2020年初&#xff0c;突如其来的新型冠状病毒肺炎打乱了所有人的节奏&#xff0c;但社会各界迅速团结起来&#xff0c;为抗击疫情贡献出自己的力量。除了捐款捐物外&#xff0c;很多科技公司运用5G、大数据、AI、云计算等新互联网技术&#xff0c;以科技的手段助力抗疫&#xf…

目标检测 | 清晰易懂的SSD算法原理综述

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶”重磅干货&#xff0c;第一时间送达SSD&#xff08;Single Shot Detection&#xff09;是一个流行且强大的目标检测网络&#xff0c;网络结构包含了基础网络&#xff08;Base Network&#xff09;&#xff0…

如何入门Python之Python基础教程详解

随着人工智能的发展&#xff0c;Python近两年也是大火&#xff0c;越来越多的人加入到Python学习大军&#xff0c;对于毫无基础的人该如何入门Python呢&#xff1f;这里整理了一些个人经验和Python入门教程供大家参考。 如果你是零基础入门 Python 的话&#xff0c;建议初学者…

【转帖】SQLServer登录连接失败(error:40-无法打开到SQLServer的连接)的解决方案...

在与SQLServer建立连接时出现与网络相关的或特定与实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且SQL SERVER已配置允许远程链接.(provide:命名管道提供程序,error:40 -无法打开到SQL Server的连接)(Microsoft SQL Server,错误:2) 我刚刚在登录连接SQL Server …

人脸识别“抓”错了人,他在监狱呆了10天

文末送5本价值百元技术书籍杨净 边策 发自 凹非寺 量子位 报道 | 公众号 QbitAI就很离谱。我&#xff0c;什么都没做&#xff0c;就莫名其妙被警察关了10天&#xff1f;&#xff01;这是发生在美国新泽西州的一段真实故事。一个酒店偷窃案件&#xff0c;嫌疑人驾车逃逸。警察没…

AI口罩“督查官”诞生记

作者 | 马超出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;在英国脱欧后&#xff0c;谷歌计划让英国用户的账号脱离欧盟的隐私监管政策&#xff0c;改用美国司法标准。尽管这样的修改让数千万英国用户的个人信息置于较少保护之下&#xff0c;但这些信息更…

你有哪些深度学习(rnn、cnn)调参的经验?

点击上方“小白学视觉”&#xff0c;选择加"星标"或“置顶”重磅干货&#xff0c;第一时间送达你有哪些deep learning&#xff08;rnn、cnn&#xff09;调参的经验&#xff1f;作者&#xff1a;hzwer链接&#xff1a;https://www.zhihu.com/question/41631631/answer…