使用smart-doc自动生成接口文档,解放java开发者

目录

1、接口文档面对的困境

对比下他们的优缺点:

2、JApiDocs简介

3、前言

生成的接口文档页面展示:

查询接口

 新增接口

删除接口

​ 官方说明文档:

4、快速使用

添加插件

在Resources下新增一个接口文档配置文件

在controller上加上对应的注解

注意点1:查询返回类型加上泛型

注意点2:返回实体上加上字段含义

 通过插件生成接口文档

 运行成功之后生成接口文档:

5、踩过的坑 

1、生成的接口文档没有对实体字段的注释

2、关于参数是否必填坑

6、生成postman测试接口文件

 生成文件和接口文档是在同一个目录下面

 把这个json文件导入到postman

 可以看到信息比我们自己写的要完整,还给参数贴心加上了默认值


1、接口文档面对的困境

我工作几年,接口文档用过好几种方式了。从最开始的word文档,到后来的swagger和confluence编写接口文档,再到后来侵入性很小的jApiDoc,最后到现在的smart-doc工具。

对比下他们的优缺点:

方式 好处 缺点
word文档和confluence 有文档留存(好像也不算好处) 费时费力、多人编写不便
swagger

1、不用专门写文档

2、通过连接直接访问

3、在线测试,有点像简化的postman

注释太多,写的想打人
jApiDoc

1、引入jar包,一键生成html接口文档

2、侵入小,添加简单注释就行

1、功能单一,只能接口文档

2、作者好久没有维护了

smart-doc

1、引入maven插件,一键生成HTML接口文档

2、作者很活跃,社区也很活跃,反应问题很快就有新版本解决

3、能生成常用的html,markdown、postman接口文档

4、侵入小,添加简单注释就行

5、适配单服务、微服务等多种环境

1、需要抽两个小时看下官方文档

2、JApiDocs简介

前面我介绍过一种工具,叫做JApiDocs,这个工具我也使用了一段时间,用起来还是不错的,能满足基本要求,文档链接地址

3、前言

被写接口文档难受了好久,使用swagger要加各种稀奇古怪的注释,十分繁琐,突然看到JApiDocs 的介绍,只需要在接口上加上点注释,就能够生成接口文档。突然来了希望,通过看文档自己使用之后,把踩过的坑记录下来

生成的接口文档页面展示:

查询接口

 新增接口

删除接口

 官方说明文档:

文档内容,说明、使用范文很齐全,特别适合我们使用,我会举个例子,大家如果要使用的话,还是抽一两个小时看看官方文档,会有很大帮助,文档地址如下:

https://gitee.com/smart-doc-team/smart-doc/wikis/smart-doc%20maven%E6%8F%92%E4%BB%B6?sort_id=1791450

4、快速使用

添加插件

<plugin>
    <groupId>com.github.shalousun</groupId>
    <artifactId>smart-doc-maven-plugin</artifactId>
    <version>2.0.8</version>
    <configuration>
        <!--指定生成文档的使用的配置文件,配置文件放在自己的项目中-->
        <configFile>./src/main/resources/smart-doc.json</configFile>
        <!--指定项目名称-->
        <projectName>测试</projectName>
        <!--smart-doc实现自动分析依赖树加载第三方依赖的源码,如果一些框架依赖库加载不到导致报错,这时请使用excludes排除掉-->
        <excludes>
            <!--格式为:groupId:artifactId;参考如下-->
            <exclude>com.alibaba:fastjson</exclude>
        </excludes>
        <!--自1.0.8版本开始,插件提供includes支持,配置了includes后插件会按照用户配置加载而不是自动加载,因此使用时需要注意-->
        <!--smart-doc能自动分析依赖树加载所有依赖源码,原则上会影响文档构建效率,因此你可以使用includes来让插件加载你配置的组件-->
        <includes>
            <!--格式为:groupId:artifactId;参考如下-->
            <include>com.alibaba:fastjson</include>
        </includes>
    </configuration>
    <executions>
        <execution>
            <!--如果不需要在执行编译时启动smart-doc,则将phase注释掉-->
            <phase>compile</phase>
            <goals>
                <!--smart-doc提供了html、openapi、markdown等goal,可按需配置-->
                <goal>html</goal>
            </goals>
        </execution>
    </executions>
</plugin>
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值