开发指南007-导出Excel

平台上开发导出Excel比过去的单体架构要复杂些,因为前端和后台不在一个进程空间里。

后台的操作是先生成excel文件,技术路线是jxl

java 复制代码
<dependency>
    <groupId>net.sourceforge.jexcelapi</groupId>
    <artifactId>jxl</artifactId>
    <version>2.6.12</version>
</dependency>

具体如何使用,请自行查询网络。

生成文件后,需要调用org.qlm.util.downFileUtil:

复制代码
public static void downFile(String filepath, String fileName, HttpServletResponse response, HttpServletRequest request)

其中·filepath为上述生成的excel文件的位置

filename为客户端下载后的文件名

前端处理:

javascript 复制代码
export function deriveExcelFile(data) {
    const RequestInfo = {
        version: "1.0",
        consumer: store.getters.QLMConfig.application_id,
        language: store.getters.language,
        serialNo: uuid.v1(),
        ...data
    };
    return request({
        url: store.getters.QLMConfig.qlm_gateway_url + service + "/deriveExcelFile",
        method: "get",
        params: RequestInfo,
        responseType:'arraybuffer',       
  });
}

写法和调用其他接口一样,只是增加一句responseType 这个和后台的downFile函数配合获取到excel文件的二进制流。获取二进制流后需要前端转换为文件,需要调用前端底层函数

import { showXLS } from '@/utils/qlm_commonfuns'

相关推荐
蓝斯4974 小时前
[原创]《C#高级GDI+实战:从零开发一个流程图》第章:增加贝塞尔曲线,上、下、左、右连接点
java·c#·流程图
前端工作日常4 小时前
我学习到的Java 的 Service 分层:itf 和 impl 到底是什么?
java·后端
都叫我大帅哥5 小时前
Spring @Transactional 注解完全指南
java·spring
Java成神之路-5 小时前
G1 垃圾回收器 :SATB + TAMS核心机制深度解析
java·jvm
前端工作日常5 小时前
我学习到的JIT即时编译与机器码缓存失效
java·后端
带刺的坐椅5 小时前
Solon 的 10 种 HTTP 服务器:改一行依赖,换一个引擎
java·solon·jetty·undertow·mcp-server·htttp
xcLeigh6 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
AI大模型-小华7 小时前
Codex 三方充值快速入门指南
java·前端·数据库·chatgpt·ai编程·codex·chatgpt pro
Mark_ZP7 小时前
【锁1】Synchronized vs ReentrantLock区别
java
Bruce_Liuxiaowei7 小时前
轻量级 IOC 管理方案:Streamlit 驱动的恶意IP情报平台
网络·jvm·网络协议·tcp/ip·安全