swagger导出所有接口为Excel

swagger + DOCWAY 一步导出为优雅完整的markdown、pdf接口文档 无需手动配置接口以及手动编写接口文档,利用swagger + DOCWAY 一步导出为优雅完整的markdown、pdf接口文档,步骤详细图解 阅读详情
AI摘要

本文介绍如何从Swagger生成的API文档中提取数据,并将其转换为CSV格式。通过Java代码实现,可以方便地批量导出接口信息,包括接口名称、路径及描述等。

一、登录swagger网页端,F12,会有一个接口,拿他的返回值生成一个本地文档

在这里插入图片描述

二、执行以下代码

FileInputStream in = new FileInputStream("C:\\Users\\azhan\\Downloads\\temp.java");
        JsonNode jsonNode = new ObjectMapper().readTree(in);

        /**
         * 取所有数据并存到HashMap中
         */
        String api;
        Map<String, List<Root>> hm = new HashMap<>();
        JsonNode node = jsonNode.findValue("paths");
        Iterator<String> stringIterator = node.fieldNames();
        while (stringIterator.hasNext()) {
            //api
            JsonNode tags = node.findValue((api = stringIterator.next()));
            Iterator<String> methodsname = tags.fieldNames();
            while (methodsname.hasNext()) {
                //方法
                String method = methodsname.next();
                JsonNode methods = tags.findValue(method);
                String name = methods.findValue("tags").get(0).asText();
                String description = methods.findValue("summary").asText();
                //当前查询到的一个接口数据放到hashmap里管理
                Root root = new Root(name, method, api,description);
                if (hm.containsKey(root.getName())) {
                    List<Root> roots = hm.get(root.getName());
                    roots.add(root);
                    hm.put(root.getName(), roots);
                } else {
                    ArrayList<Root> roots = new ArrayList<>();
                    roots.add(root);
                    hm.put(root.getName(), roots);
                }

            }
            // 处理相同数据
            for (String s : hm.keySet()) {
                final List<Root> roots = hm.get(s);
                final List<Root> collect = roots.stream().distinct().collect(Collectors.toList());
                hm.put(s,collect);
            }
        }

        /**
         * 获得name的顺序,并按顺序写入csv
         */
        File file = new File("C:\\Users\\azhan\\Downloads\\result.csv");
        //excel不能读取utf-8编码的csv文件
        BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(
                new FileOutputStream(file), "GBK"));

        Iterator<JsonNode> names = jsonNode.findValue("tags").iterator();
        while (names.hasNext()) {
            String name = names.next().findValue("name").asText();
            Iterator<Root> iterator1 = hm.get(name).iterator();
            bufferedWriter.write(name + ",");
            Boolean isFirst = true;
            //如果是第一行增加name,如果不是填入空白格
            while (iterator1.hasNext()) {
                if (!isFirst) {
                    bufferedWriter.write(",");
                } else {
                    isFirst = false;
                }
                Root next = iterator1.next();
                bufferedWriter.write(next.getMethod() + "," +
                        next.getApi() + "," + next.getDescription());
                bufferedWriter.newLine();
            }

        }
        bufferedWriter.close();
        //打开生成的csv文件
        Runtime.getRuntime().exec("cmd /c start C:\\Users\\azhan\\Downloads\\result.csv");
        System.out.println("done");

根据需要自行更改本地文件的地址和下载文件的地址!
需要什么参数,可以根据实际情况修改代码!

【经验篇】记SpringBoot+Swagger下载Excel文件打开错误的问题 背景描述 需求描述: 实现一个报表查询功能,可以根据查询条件导出Excel文件。 技术栈: SpringBoot + Swagger 代码示例 public void exportExcel(UserQuery query, HttpServletResponse response) { // 1. 查询数据 List<UserStageInfo> userStageList = sevice.getUserStageList(query); // 2. 生成Excel Workbook 阅读详情

相关推荐

Swagger接口文档自动化导出:从JSON到Word/Excel的实战指南

本文详细介绍了如何将Swagger接口文档自动化导出为Word和Excel格式的实战指南。通过开源工具swagger-json-to-csv和swagger2word,开发者可以高效地将JSON格式的Swagger文档转换为适合交付和离线查看的Word或Excel文件,大幅提升工作效率。文章还涵盖了常见问题处理、模板定制技巧以及企业级优化实践。

weixin_42522669的博客 285

Swagger导出word和excel文档

参考博文 1、Swagger文档转Word 文档 2、提取swagger内容到csv表格,excel可打开

xunming的专栏 2万+

Swagger接口文档除了在线看,还能怎么用?我整理了3种本地化导出方案(含Word/Excel)

本文深度解析Swagger接口文档的3种本地化导出方案,包括Word、Excel和Markdown/PDF格式。针对不同场景需求,提供专业工具和实用技巧,如swagger2word工具定制、Excel数据分析及Markdown版本控制,帮助团队高效管理API文档并满足多样化交付需求。

weixin_42545503的博客 209

Swagger转换成Excel文件

swagger转Excel文件

xushuanglu_csdn的博客 2307

java使用poi的excel数据导出及线上预览

工作中经常会遇到需要从数据库中获取数据,整理后导出数据到excel中提供其他人员下载或者查看,整体功能并不复杂,今天提供一个基于poi工具+永中云预览的excel通用导出在线查看的方法 maven依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> &

qq_40284131的博客 1268

告别复制粘贴!用这个开源工具,5分钟把Swagger接口文档转成Word/Excel表格

本文介绍如何利用开源工具快速将Swagger接口文档转换为Word/Excel格式,告别手动复制粘贴的繁琐操作。通过自动化方案,开发者可在5分钟内生成标准化文档,显著提升工作效率,避免格式失真和版本滞后问题。特别适合需要频繁交付API文档的团队使用。

weixin_33674976的博客 420

swagger接口导出excel文件打不开

swagger接口导出excel文件打不开: 接口添加produces="application/octet-stream" @ApiOperation(value = "列表导出",produces="application/octet-stream")

qq_37185361的博客 2638

导出Excel文档.

该文件用于在项目过程中导出Excel表格

一个方法获取所有controller的接口及swagger注释并导出excel

获取项目接口及swagger注释并导出excel

kuikuiaile的博客 716

Unity卡牌游戏UI框架:数据驱动与模块化设计实践

在Unity游戏开发中,UI系统是连接玩家与游戏逻辑的关键桥梁,其核心在于实现数据与表现的高效同步。数据驱动设计通过分离数据模型、逻辑状态与视图表现,利用观察者模式自动响应状态变化,确保了代码的清晰与可维护性。这种架构显著提升了开发效率,尤其在需要复杂状态管理和实时反馈的交互场景中,如卡牌游戏的拖拽、布局与动画系统。基于模块化思想,开发者可以将卡牌视图、布局管理、区域控制等组件像积木一样组合,快速构建出动态的手牌弧形布局、战场区域管理等特色功能。通过集成对象池、图集优化等性能方案,还能有效管理绘制调用与网格

weixin_34262482的博客 450

交通银行金融科技后端开发实习生面试经验

笔试之路的第一个脚印。不足的地方:基本功不扎实,得补。先补sql(先整理出一篇sql语句做题的文章,争取下次笔试拿下这一块),编程题中的SQL写不出来感觉很丢人。然后补八股文,结合一些网上项目教程,来理解常用的一些八股文(比如各种锁)。

T__TSZ的博客 1719

springboot 采坑之 swagger-ui.html 导出Excel接口无法打开

swagger-ui 测试接口本来很方便的,但是用之导出Excel表格的时候,发下下载的文件就会打不开,目前还没找到根本解决办法, 只能是修改接口路径,直接测试,会发现代码正常,导出的Excel也可以正常打开,如果不知道swagger-ui 这个坑的话,可能会浪费很多时间去怀疑代码问题 ...

qq_33695124的博客 1393

DeepSeek的训练与优化流程

DeepSeek的训练体系不仅追求极致的计算效率,更注重将物理规律、人类知识、安全伦理深度融入训练过程,其"效率-安全-可解释性"三角平衡的设计理念,为行业提供了重要参考范式。

m0_56896669的博客 1433

Swagger根据注解导出接口名称参数路径为Excel

Swagger根据注解导出接口名称参数路径为Excel、csv

weixin_48900246的博客 793

别再踩坑了!QT5.15.2配置Android开发环境保姆级避坑指南(含Java8、SDK Tools版本选择)

本文提供QT5.15.2配置Android开发环境的详细避坑指南,重点解决版本锁定、SDK工具选择和QtCreator配置等常见问题。通过实测推荐的Java8、Android SDK Tools版本及NDK配置,帮助开发者高效完成环境搭建,避免隐性冲突和配置失败。

weixin_42537919的博客 237

PLUS模型土地利用变化模拟使用简介

因子包括自然因子如社会因子,通过计算整理得到新图层,并以tif文件输出到驱动因子的文件夹里,驱动因子文件夹里存放的是tif文件格式。线性回归使用提供的所有的LULC资源数据,可以选择往后预测的年数,选择好数据之后,可以得出预测的每一年的每一用地类型面积数据。在此过程之后,可以继续使用此CARS输入的数据继续模拟,也可返回二(3)中CARS模块,重新输入不同的年份预测。在此过程之后,可以继续使用此CARS输入的数据继续模拟,也可返回二(3)中CARS模块,重新输入不同的年份预测。

qq_42831270的博客 5803

Go语言gin框架项目:按模板导出excel并在网页端下载,并将此接口完成swagger的配置

Go语言gin框架项目:按模板导出excel并在网页端下载,并将此接口完成swagger的配置的详细步骤

pyscl01的博客 2852

【Pandas总结】第二节 Pandas 的数据读取_pd.read_csv()的使用详解(非常全面,推荐收藏)

pandas对纯文本的读取提供了非常强力的支持,参数有四五十个。这些参数中,有的很容易被忽略,但是在实际工作中却用处很大。

weixin_47139649的博客 11万+

接口导出Excel在swagger上导出后无法打开

这个时候我们需要在swagger上修改配置: @ApiOperation(value=“动态生成下拉模板”,produces=“application/octet-stream”)

weixin_52664593的博客 836

Unity-RetargetPro3-动画插件试用

一个名气大于实战的插件。

大话程序员 710

swagger测试excel数据导出接口

在@ApiOperation后面加produces = “application/octet-stream” @GetMapping("/export/level/info") @ApiOperation(value="导出Item-level明细",notes="导出Item-level明细",httpMethod="GET",produces = "application/octet-stream") @ApiOperationSupport(order = 5) public

miaoao611的博客 3665

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

导出excel文件到浏览器,swagger测试导出文件名竟然一直乱码

本来就是个很简单的导出xlsx文件到浏览器页面,但是中间写的时候还是遇到了一些问题的。 1、由于导出xlsx文件需要用到HSSFWorkbook,所以需要导入POI依赖 <!-- 导入、导出Excel --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.16</ve

weixin_43779185的博客 3240

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

springboot 使用ExcelUtil实现文件导入、导出、模板下载

Excel导入导出模板下载

m0_72956561的博客 6184

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

别再手动复制了!用这个开源工具,5分钟把Swagger接口文档转成Word/Excel表格

本文介绍了3种自动化方案,帮助开发者快速将Swagger接口文档转换为Word或Excel表格,解决手动复制效率低、格式混乱等问题。通过开源工具和浏览器插件,实现高效文档导出,提升团队协作效率。

weixin_33709364的博客 381
上一篇: 使用easyExcel 导出文件并合并相同内容的单元格-导出下拉模板-数据有效性校验
Medo丶
博客等级 码龄9年 10粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值