软件编程
位置:首页>> 软件编程>> java编程>> spring boot集成smart-doc自动生成接口文档详解

spring boot集成smart-doc自动生成接口文档详解

作者:红姐最牛  发布时间:2023-11-28 23:08:02 

标签:spring,boot,smart,doc,接口

前言

smart-doc 是一款同时支持 java restful api 和 Apache Dubbo rpc 接口文档生成的工具,smart-doc 颠覆了传统类似 swagger 这种大量采用注解侵入来生成文档的实现方法。

smart-doc 完全基于接口源码分析来生成接口文档,完全做到零注解侵入,你只需要按照 java 标准注释编写,smart-doc 就能帮你生成一个简易明了的 markdown 或是一个像 GitBook 样式的静态 html 文档。如果你已经厌倦了 swagger 等文档工具的无数注解和强侵入污染,那请拥抱 smart-doc 吧!

功能特性

  • 支持接口 debug。

  • 零注解、零学习成本、只需要写标准 java 注释。

  • 基于源代码接口定义自动推导,强大的返回结构推导。

  • 支持 Spring MVC,Spring Boot,Spring Boot Web Flux (controller 书写方式),JAX-RS 规范。

  • 支持 Callable,Future,CompletableFuture 等异步接口返回的推导。

  • 支持 JavaBean 上的 JSR303 参数校验规范,支持分组验证。

  • 对 json 请求参数的接口能够自动生成模拟 json 参数。

  • 对一些常用字段定义能够生成有效的模拟值。

  • 支持生成 json 返回值示例。

  • 支持从项目外部加载源代码来生成字段注释 (包括标准规范发布的 jar 包)。

  • 支持生成多种格式文档:Markdown、HTML5、Asciidoctor、Postman collection、Open Api 3.0+。

  • 轻易实现在 Spring Boot 服务上在线查看静态 HTML5 api 文档。

  • 开放文档数据,可自由实现接入文档管理系统。

  • 一款代码注释检测工具,不写注释的小伙伴逃不过法眼了。

  • 插件式快速集成 (支持 maven 和 gradle 插件)。

  • 支持 Apache Dubbo rpc 文档生成。

  • 支持国产 Solon 应用开发框架。

smart-doc官网地址:Document

1 项目中创建 /src/main/resources/smart-doc.json配置文件

spring boot集成smart-doc自动生成接口文档详解

2 配置内容如下(指定文档的输出路径)

spring boot集成smart-doc自动生成接口文档详解

{
 "outPath": "D://md2"
}

3 pom.xml下添加配置

<plugin>
               <groupId>com.github.shalousun</groupId>
               <artifactId>smart-doc-maven-plugin</artifactId>
               <version>2.1.0</version>
               <configuration>
                   <!--指定生成文档的使用的配置文件,配置文件放在自己的项目中-->
                   <configFile>./src/main/resources/smart-doc.json</configFile>
                   <!--指定项目名称-->
                   <projectName>测试</projectName>
                   <!--smart-doc实现自动分析依赖树加载第三方依赖的源码,如果一些框架依赖库
                        加载不到导致报错,这时请使用excludes排除掉-->
                   <excludes>
                       <!--格式为:groupId:artifactId;参考如下-->
                       <!--也可以支持正则式如:com.alibaba:.* -->
                       <exclude>com.alibaba:fastjson</exclude>
                   </excludes>
                   <!--includes配置用于配置加载外部依赖源码,配置后插件会按照配置项加载外部
                      源代码而不是自动加载所有,因此使用时需要注意-->
                   <!--smart-doc能自动分析依赖树加载所有依赖源码,原则上会影响文档构建效
                      率,因此你可以使用includes来让插件加载你配置的组件-->
                   <includes>
                       <!--格式为:groupId:artifactId;参考如下-->
                       <!--也可以支持正则式如:com.alibaba:.* -->
                       <include>com.alibaba:fastjson</include>
                       <!-- 如果配置了includes的情况下, 使用了mybatis-plus的分页需要
                            include所使用的源码包 -->
                       <include>com.baomidou:mybatis-plus-extension</include>
                       <!-- 如果配置了includes的情况下, 使用了jpa的分页需要include所使用
                            的源码包 -->
                       <include>org.springframework.data:spring-data-commons</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>

4 运行插件

spring boot集成smart-doc自动生成接口文档详解

5 找到存放路径浏览器打开

spring boot集成smart-doc自动生成接口文档详解

6 测试结果

spring boot集成smart-doc自动生成接口文档详解

来源:https://blog.csdn.net/qq_40609490/article/details/126992271

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com