springboot+vue使用easyExcel實現導出功能

vue部分

// 導出計算數據exportDataHandle(id) {this.$http({url: this.$http.adornUrl('/xxx/xxx/exportCalDataExcel'),method: 'post',data: this.$http.adornData({'id': id}),responseType: 'blob', // 重要:告訴axios我們希望接收二進制數據}).then(({data}) => {const blob = new Blob([data], {type: 'data:application/vnd.ms-excel;base64;charset=utf-8'});const downloadElement = document.createElement('a');const href = window.URL.createObjectURL(blob); // 創建下載的鏈接downloadElement.href = href;downloadElement.download = 'abc' + '.xlsx'; // 下載后文件名document.body.appendChild(downloadElement);downloadElement.click(); // 點擊下載document.body.removeChild(downloadElement); // 下載完成移除元素window.URL.revokeObjectURL(href); // 釋放掉blob對象this.$message({message: '操作成功',type: 'success',duration: 1500,})})},

Java部分

1導入maven依賴

這里要注意,由于easyexcel的包中包含了poi的依賴,所以在引入easyexcel包之前,需要刪掉mavne中poi的包,否則會出現依賴異常:com.alibaba.excel.exception.ExcelGenerateException: java.lang.NoSuchFieldError: Factory

        <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.0.5</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.79</version></dependency><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.8.10</version></dependency>

2 編寫代碼

import com.alibaba.excel.EasyExcel;   /*** 導出 計算數據*/@RequestMapping("/exportCalDataExcel")public void exportCalDataExcel(@RequestBody ExamEntity exam, HttpServletResponse response) throws IOException {//1 數據獲取List<CalDataDto> dataList = answerScoreService.getAllCalData(exam);//2 設置響應頭response.setContentType("application/vnd.ms-excel");response.setCharacterEncoding("utf-8");// 這里URLEncoder.encode可以防止中文亂碼String fileName = URLEncoder.encode("文件名", "UTF-8").replaceAll("\\+", "%20");response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");// 3 將數據寫入excel中EasyExcel.write(response.getOutputStream(), CalDataDto.class).sheet("Sheet1").doWrite(dataList);}

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;@Data
public class CalDataDto {@ExcelProperty("變量名")
//    @ColumnWidth(10)private String name;@ExcelProperty("數據")private Double num;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/65432.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/65432.shtml
英文地址,請注明出處:http://en.pswp.cn/web/65432.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

25年01月HarmonyOS應用基礎認證最新題庫

判斷題 “一次開發&#xff0c;多端部署”指的是一個工程&#xff0c;一次開發上架&#xff0c;多端按需部署。為了實現這一目的&#xff0c;HarmonyOS提供了多端開發環境&#xff0c;多端開發能力以及多端分發機制。 答案&#xff1a;正確 《鴻蒙生態應用開發白皮書》全面闡釋…

ELK實戰(最詳細)

一、什么是ELK ELK是三個產品的簡稱&#xff1a;ElasticSearch(簡稱ES) 、Logstash 、Kibana 。其中&#xff1a; ElasticSearch&#xff1a;是一個開源分布式搜索引擎Logstash &#xff1a;是一個數據收集引擎&#xff0c;支持日志搜集、分析、過濾&#xff0c;支持大量數據…

Dubbo-筆記隨記一

一、實戰 1 . Springboot整合 1.1 服務提供者 1.1.1 依賴 <dependency><groupId>org.apache.dubbo</groupId><artifactId>dubbo-spring-boot-starter</artifactId><version>3.2.10</version></dependency><dependency&g…

git tag

文章目錄 1.簡介2.格式3.選項4.示例參考文獻 1.簡介 同大多數 VCS 一樣&#xff0c;Git 也可以對某一時間點的版本打上標簽&#xff0c;用于版本的發布管理。 一個版本發布時&#xff0c;我們可以為當前版本打上類似于 v.1.0.1、v.1.0.2 這樣的 Tag。一個 Tag 指向一個 Commi…

ETCD滲透利用指南

目錄 未指定使用put操作報錯 未指定操作版本使用get報錯 首先etcd分為兩個版本v2和v3&#xff0c;不同的API結果無論是訪問URL還是使用etcdctl進行通信&#xff0c;都會導致問題&#xff0c;例如使用etcdctl和v3進行通信&#xff0c;如果沒有實名ETCDCTL_API3指定API版本會直接…

使用VUE3創建個人靜態主頁

使用VUE3創建個人靜態主頁 &#x1f31f; 前言&#x1f60e;體驗&#x1f528; 具體實現? 核心功能&#x1f3d7;? 項目結構&#x1f680; 用這個項目部署 Git Page &#x1f4d6; 參考 &#x1f31f; 前言 作為開發者或者內容創作者&#xff0c;我們經常需要創建靜態網頁&a…

Lua語言中常用的字符串操作函數

string.sub(s, i, j) 功能: 截取字符串 s 中從位置 i 到位置 j 的子字符串。 local s "Hello, Lua!" print(string.sub(s, 1, 5)) -- 輸出 "Hello" print(string.sub(s, 8, 11)) -- 輸出 "Lua!" string.len(s) 功能&#xff1a;將字符串長度…

llm大模型學習

llm大模型 混合專家模型&#xff08;MoE&#xff09;MoE結構路由router專家expertSwitch Transformer的典型MOE模型最后MoE總結 混合專家模型&#xff08;MoE&#xff09; 模型規模是提升LLM大語言模型性能的關鍵因素&#xff0c;但也會增加計算成本。Mixture of Experts (MoE…

Linux入門攻堅——43、keepalived入門-1

Linux Cluster&#xff08;Linux集群的類型&#xff09;&#xff1a;LB、HA、HPC&#xff0c;分別是負載均衡集群、高可用性集群、高性能集群。 LB&#xff1a;lvs&#xff0c;nginx HA&#xff1a;keepalived&#xff0c;heartbeat&#xff0c;corosync&#xff0c;cman HP&am…

HTML5 動畫效果:淡入淡出(Fade In/Out)詳解

HTML5 動畫效果&#xff1a;淡入淡出&#xff08;Fade In/Out&#xff09;詳解 淡入淡出&#xff08;Fade In/Out&#xff09;是一種常見的動畫效果&#xff0c;使元素逐漸顯現或消失&#xff0c;增強用戶體驗。以下是淡入淡出的詳細介紹及實現示例。 1. 淡入淡出的特點 平滑…

YOLOv8/YOLOv11改進 添加CBAM、GAM、SimAM、EMA、CAA、ECA、CA等多種注意力機制

目錄 前言 CBAM GAM SimAM EMA CAA ECA CA 添加方法 YAML文件添加 使用改進訓練 前言 本篇文章將為大家介紹Ultralytics/YOLOv8/YOLOv11中常用注意力機制的添加&#xff0c;可以滿足一些簡單的漲點需求。本文僅寫方法&#xff0c;原理不多講解&#xff0c;需要可跳…

Go語言的 的多態性(Polymorphism)基礎知識

Go語言的多態性&#xff08;Polymorphism&#xff09;基礎知識 在編程語言中&#xff0c;多態性是一個核心概念&#xff0c;它允許同一接口被不同的數據類型所實現&#xff0c;從而在不影響代碼結構的情況下增強代碼的靈活性和可擴展性。在Go語言中&#xff0c;多態性通過接口…

nginx運行之后顯示的是上一個項目,如何解決

重啟 Nginx 使配置生效 修改 Nginx 配置后&#xff0c;你需要重新加載或重啟 Nginx&#xff0c;以使配置生效。執行以下命令&#xff1a; sudo nginx -t # 測試配置是否正確 sudo systemctl restart nginx # 重啟 Nginxbash 復制代碼 檢查瀏覽器緩存 瀏覽器可能緩存了舊…

與 Oracle Dataguard 相關的進程及作用分析

與 Oracle Dataguard 相關的進程及作用分析 目錄 與 Oracle Dataguard 相關的進程及作用分析與 Oracle Dataguard 相關的進程及作用分析一、主庫的進程1、LGWR 進程2、ARCH進程3、LNS 進程 二、備庫的進程1、RFS 進程2、ARCH3、MRP&#xff08;Managed Recovery Process&#x…

【C語言】_指針與數組

目錄 1. 數組名的含義 1.1 數組名與數組首元素的地址的聯系 1.3 數組名與首元素地址相異的情況 2. 使用指針訪問數組 3. 一維數組傳參的本質 3.1 代碼示例1&#xff1a;函數體內計算sz&#xff08;sz不作實參傳遞&#xff09; 3.2 代碼示例2&#xff1a;sz作為實參傳遞 3…

解決“KEIL5軟件模擬仿真無法打印浮點數”之問題

在沒有外部硬件支持時&#xff0c;我們會使用KEIL5軟件模擬仿真&#xff0c;這是是仿真必須要掌握的技巧。 1、點擊“Project”&#xff0c;然后點擊“Options for target 項目名字”&#xff0c;點擊“Device”,選擇CPU型號。 2、點擊“OK” 3、點擊“Target”,勾選“Use Mi…

donet (MVC)webAPI 的接受json 的操作

直接用對象來進行接收&#xff0c;這個方法還不錯的。 public class BangdingWeiguiJiluController : ApiController{/// <summary>/// Json數據錄入錯誤信息/// </summary>/// <param name"WeiguiInfos"></param>/// <returns></r…

設計模式與游戲完美開發(3)

更多內容可以瀏覽本人博客&#xff1a;https://azureblog.cn/ &#x1f60a; 該文章主體內容來自《設計模式與游戲完美開發》—蔡升達 第二篇 基礎系統 第五章 獲取游戲服務的唯一對象——單例模式&#xff08;Singleton&#xff09; 游戲實現中的唯一對象 在游戲開發過程中…

pygame飛機大戰

飛機大戰 1.main類2.配置類3.游戲主類4.游戲資源類5.資源下載6.游戲效果 1.main類 啟動游戲。 from MainWindow import MainWindow if __name__ __main__:appMainWindow()app.run()2.配置類 該類主要存放游戲的各種設置參數。 #窗口尺寸 #窗口尺寸 import random import p…

thinkphp通過html生成pdf

thinkphp 生成pdf {__NOLAYOUT__} <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>合同模板</title><style>/*打印內容*/media print {page {size: A4 landscape; /* auto is the initi…