smart-doc 2.1.1发布,紧急修复推送文档到 Torna 的 bug

来源: 投稿
作者: 上官胡闹
2021-03-25

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 书写方式)。
  • 支持 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 文档生成。

Smart-doc 和其他工具的支持

功能特性 smart-doc swagger
代码侵入 注解侵入性严重
集成复杂度 简单,只需插件 偏复杂
插件支持 有gradle和maven插件 无插件
openapi规范支持 支持openapi 3.0 完全支持openapi的版本
CI构建集成

可在ci构建阶段使用

maven或者gradle命令

启动插件生成文档

 

不支持
集中化文档中心集成

已经和torna企业级接口文档管理平台对接

不支持
维护持续性 值得信赖,开源后用户基础多,一直持续维护 全球用户多,开源维护值得信赖
接口debug 2.0.0版本开始已经支持debug,页面比swagger漂亮太多了。 支持

Smart-doc 从 2.0.0 后几乎实现了 swagger ui 的功能,并且比 swagger ui 更简洁大方,也更符合国内开发者的诉求。当然 smart-doc 的功能也已经

超过了 swagger 为 java 开发者提供的功能。当然 smart-doc 本身是只支持扫描代码生成 openapi 3.0 的文档的,也可以将生成的 openapi 3.0 文档导入到其他ui中渲染展示。

更新内容

从 2.0.0 版本开始,smart-doc 完全支持生成 debug 调试页面。从本次发布的 2.1.1版本起,smart-doc 的对接了企业级的接口文档管理平台。

1. 修复Map嵌套在某些结构体中栈溢出问题,gitee #I3CCLY。
2. 修复Torna数据推送问题。

debug 页面效果

maven或gradle插件

smart-doc 官方为了方便用户快速和无侵入的集成 smart-doc 的文档 api 生成能力,我们开发可相关的 maven 或者 gradle 插件。这里也推荐使用插件的方式来使用 smart-doc。

https://gitee.com/smart-doc-team/smart-doc-maven-plugin

官方推荐方案

smart-doc + Torna 组成行业领先的文档生成和管理解决方案,使用smart-doc无侵入完成Java源代码分析和提取注释生成API文档,自动将文档推送到Torna企业级接口文档管理平台。

smart-doc+torna

smart-doc+Torna文档自动化

smart-doc在国内很多企业中被用来替换了swagger,甚至是在国内Top 3内的大厂都有smart-doc的二次开发版本。Torna未来的目标是追赶和超越Yapi。smart-doc针对java spring技术栈的解析能力目前为业内最强(不服就拿工具来跑smart-doc的解析demo)。所以smart-doc+Torna的方案威力巨大,Torna目前处于高速迭代期,欢迎体验Torna,我们努力为社区提供高效好用的接口文档解决方案。

升级建议

 smart-doc 这个版本最大的变更是对接了Torna企业级接口文档管理系统。

DEMO

使用demo轻松玩转接口文档生成,其他用户案例文档效果展示:https://api.doubans.com/

知名用户

  • 科大讯飞
  • 一加
  • 小米

鸣谢

smart-doc也是利用一些开源技术构建起来的,我在这里对下列开源项目表示感谢。

  • Beetl 国内开源的JAVA模板引擎

  • QDOX 开源JAVA源代码解析库
展开阅读全文
6 收藏
分享
加载中
最新评论 (7)
数据比较多的时候推送会超时 亲身经历 应该是刚出来那个版本测试了下
2021-03-26 21:04
0
回复
举报
mybatis-plus分页返回结果,分页参数的注解是在哪里定义的?
2021-03-26 16:22
0
回复
举报
这个支持jsr303吗
2021-03-25 23:04
0
回复
举报
支持的
2021-03-26 00:00
0
回复
举报
就是使用spring gateway的时候,有路径问题,直接测试springboot的服务没问题,访问gateway就有路径找不到问题了
2021-03-25 14:03
0
回复
举报
可以前往项目页提交一个issue,详细说明下您的问题,开发人员会跟进处理。
2021-03-25 15:58
0
回复
举报
很好用,逐渐切换了公司的swagger
2021-03-25 14:01
0
回复
举报
更多评论
7 评论
6 收藏
分享
返回顶部
顶部