SpringBoot如何自动生成API文档详解

网友投稿 1020 2022-12-23

SpringBoot如何自动生成API文档详解

SpringBoot如何自动生成API文档详解

前言

在做项目的时候,如果项目是前后分离的,后端一定要和前端或者是移动端对接接口,那么问题来了,接口是不是要自己写给他们看,一般的会采用Excel或者Word来写,高级一点的就采用API管理平台手工录入,一个项目有上千上万个接口,天啊,这是多么大的工作量,在接口维护的时候更加痛苦,为了解决这样的事我们可以借助 japi 这个项目来完成RESTFul文档的自动生成,完全基于注释生成,更多详细配置可查看https://github.com/dounine/japi。

使用说明

克隆项目下来

git clone https://github.com/dounine/japi.git

编译打包

cd japi/java

gradle install -xtest

运行JAPI后台管理

cd japi/java

gradle bootRun

运行JAPI文档界面

cd japi/node

node app.js

生成RESTFul文档

maven项目

com.dounine.japi

client

1.0

gradle项目

compile group: 'com.dounine.japi', name: 'client', version: '1.0'

编辑resources/japi.properties配置文件

japi.name=test

japi.uuid=43a600877430438596de3d330e4bd06e

japi.version=1.0.0

japi.author=lake

japi.url=http://192.168.0.123:8080

japi.description=this is project description.

japi.createTime=2017-02-23 10:44:44

japi.icon=/home/lake/github/japi/html/img/logo.png

japi.server=http://192.168.0.179:7778

japi.server.username=japi

japi.server.password=japi123

编写一个action

/**

* 获取用户列表

* @param user 用户信息

* @return class User

* @version v2

*/

@GetMapping(value = "v2/list")

public Result hots(@Validated({User.UserDEL.class}) User user) throws RuntimeException {

return null;

}

编写一个API生成类

JapiCreateTest.java

@Test

public void testCreate(){

JapiClient.setPrefixPath("/home/lake/github/test-japi/java/");//项目路径前缀

JapiClient.setpostfixPath("/src/main/java");//项目路径后缀

JapiClient.setProjectJavaPath("client");//主项目地扯

JapiClient.setActionReletivePath("com/dounine/test-japi/action");//相对主项目action包所在路径

//JapiClient.setIncludeProjectJavaPath(new String[]{"api"});//主项目中关联的其它项目包路径

JapiClient.setIncludePackages(new String[]{"com.dounine.test-japi"});//关联的包,用于准确快速搜索

JapiClient.saveHistory(true);//是否保留本地历史版本

JapiClient.setFlushServer(false);//强制同步本地与服务器所有的版本(会先删除服务器以前的历史版本)

IProject project = ProjectImpl.init();

JapiClientStorage japiClientStorage = JapiClientStorage.getInstance();

japiClientStorage.setProject(project);

japiClientStorage.autoSaveToDisk();//自动使用到本地磁盘==> 用户目录/.japi-client/

new JapiClientTransfer().autoTransfer(japiClientStorage);//文件传输到主服务器.

}

最后访问浏览器 http://localhost:7777

就可看到RESTFul文档登录

使用自己的帐号登录就可以看到所有项目

进入项目看详细RESTFul接口

使用场景

JAPI最适合在SpringCloud这样的分布式多模块项目中使用,内置强大的正则表达式,这会让代码注释更加规范,区别于swigger这类使用侵入式注解生成文档的,JAPI是完全基于标准注释生成的,支持强大的JSR303或者是自定义注解。

开源精神

欢迎有意向的同学加入JAPI项目组将它改造得更好。

总结

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:前端框架三大框架(前端框架三大框架是什么)
下一篇:车载物联网终端(车载物联网是什么)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~