当前位置: 首页 > article >正文

Springboot 读取 resource 目录下的Excel文件并下载

代码示例:

@GetMapping("/download")
public void download(HttpServletResponse response) {
	try {
		String filename = "测试.xls";
		OutputStream outputStream = response.getOutputStream();
		// 获取springboot resource 路径下的文件
		InputStream inputStream = this.getClass().getResourceAsStream("/excel/text.xls");
		response.setContentType("application/vnd.ms-excel");
		response.setHeader("Content-Disposition", "attachment;fileName=" + new String(filename.getBytes("utf-8"), "iso-8859-1"));
		IOUtils.copy(inputStream, outputStream);
		inputStream.close();
		outputStream.flush();
	} catch (Exception e) {
		throw new ResponseStatusException(HttpStatus.INTERNAL_SERVER_ERROR, e.toString());
	}
}

提示:如果 inputStream 为null ,或者提示 文件路径不存在,执行 mvn clean 并 重启项目,查看target 目录下是否存在该文件

pom文件中添加一下配置,防止excel文件中文乱码

 <plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-resources-plugin</artifactId>
	<version>2.6</version>
	<configuration>
		<encoding>UTF-8</encoding>
		<nonFilteredFileExtensions>
			<nonFilteredFileExtension>xls</nonFilteredFileExtension>
			<nonFilteredFileExtension>xlsx</nonFilteredFileExtension>
			<nonFilteredFileExtension>dat</nonFilteredFileExtension>
		</nonFilteredFileExtensions>
	</configuration>
</plugin>


http://www.kler.cn/a/414892.html

相关文章:

  • 【踩坑日记】【教程】如何在ubuntu服务器上配置公钥登录以及bug解决
  • 同时在github和gitee配置密钥
  • C语言解决空瓶换水问题:高效算法与实现
  • 视频汇聚平台Liveweb国标GB28181视频平台监控中心设计
  • MySQL索引与分区:性能优化的关键
  • 详谈面试题:Vue、React为什么使用虚拟DOM
  • 【innodb阅读笔记】之 表空间文件、重做日志文件
  • 网络安全拟态防御技术
  • 【计算机网络安全】信息收集扫描
  • 【分享】PPT打开密码的设置与移除方法
  • Neo4j图形数据库-Cypher中常用指令
  • Spring Security6 OAuth2 实现流程
  • Oracle, PostgreSQL 字符串排序不一致及调整
  • docker 僵尸进程问题
  • 构建 LLM (大型语言模型)应用程序——从入门到精通(第七部分:开源 RAG)
  • 使用 Go 语言封装 MinIO 相关操作
  • 40分钟学 Go 语言高并发:Pipeline模式(二)
  • 网络安全-AAA介绍与配置
  • 【k8s深入理解之 Scheme】全面理解 Scheme 的注册机制、内外部版本、自动转换函数、默认填充函数、Options等机制
  • Blender 运行python脚本
  • 跨平台应用开发框架(3)-----Qt(样式篇)
  • 泷羽sec学习打卡-shell命令4
  • 从数据提取到管理:合合信息的智能文档处理全方位解析【合合信息智能文档处理百宝箱】
  • PHP后台微信医院预约挂号小程序设计与实现(论文+作品)
  • visionpro官方示例分析(一) 模板匹配工具 缺陷检测工具
  • 如何在 Ubuntu 上部署一个属于自己的 Plex 媒体服务器