首页 > 其他分享 >SpringBoot 打jar包后下载static文件夹下的文件

SpringBoot 打jar包后下载static文件夹下的文件

时间:2023-08-01 20:33:29浏览次数:37  
标签:outputStream SpringBoot jar inputStream 包后 static fileName null response

前端:

后端:
@RequestMapping(value = {"downloadFile"})
public void downloadFile(HttpServletResponse response) {
InputStream inputStream = null;
OutputStream outputStream = null;
fileName="aaa.pdf";
try {
// 直接获取流
inputStream = FileUtil.class.getClassLoader().getResourceAsStream("static/doc/" + fileName);
response.setContentType("application/octet-stream");
String name = java.net.URLEncoder.encode(fileName, "UTF-8");
response.setHeader("Content-Disposition", "attachment;filename=" + java.net.URLDecoder.decode(name, "ISO-8859-1") );
outputStream = response.getOutputStream();
if( inputStream != null) {
// 调用工具类
byte[] results = FileCopyUtils.copyToByteArray(inputStream);
outputStream.write(results);
outputStream.flush();
}
} catch (IOException e) {
System.out.println("文件下载失败, e");
}
finally {
IOUtils.closeQuietly(outputStream);
IOUtils.closeQuietly(inputStream);
}
}

标签:outputStream,SpringBoot,jar,inputStream,包后,static,fileName,null,response
From: https://www.cnblogs.com/liuhaotian548/p/17599006.html

相关文章

  • SpringBoot + Redis 执行lua脚本
    1、背景有时候,我们需要一次性操作多个Redis命令,但是这样的多个操作不具备原子性,而且Redis的事务也不够强大,不支持事务的回滚,还无法实现命令之间的逻辑关系计算。所以,一般在开发中,我们会利用lua脚本来实现Redis的事务。2、lua脚本Redis中使用lua脚本,我们需要注意......
  • 引入外部jar无法打包到项目里
    <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><configuration><webResources><resource><!--打包时将lib里面的包打到指定......
  • 使用Maven插件为SpringBoot应用构建Docker镜像
    Docker开启远程API用vim编辑器修改docker.service文件#生成证书opensslgenrsa-aes256-outca-key.pem4096opensslreq-new-x509-days365-keyca-key.pem-sha256-outca.pemopensslgenrsa-outserver-key.pem4096opensslreq-subj"/CN=localhost"-sha256-......
  • SpringBoot如何获取IOC容器以及修改Bean
    通过ApplicationContextAware来获得ApplicationContext,然后获取相关Bean进行操作举例说明@ConfigurationpublicclassCommonConfigimplementsApplicationContextAware{@OverridepublicvoidsetApplicationContext(ApplicationContextapplicationContext)throw......
  • springboot 集成 onlyoffice 实现文档预览、编辑、pdf转化、缩略图生成
    开源地址https://gitee.com/lboot/lucy-onlyoffice介绍lucy-onlyoffice是依赖于onlyoffice的springboot文档预览编辑集成解决方案,该解决方案实现了了onlyoffice的访问使用,支持对常见文档类型的预览,编辑和转化。该解决方案提供了功能的拓展实现,用户可以基于拓展接口,实现业务系统......
  • springboot 使用log4j2配置
      pom配置如下:<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>......
  • 智慧校园源码:vue2+Java+springboot+MySQL+elmentui+jpa+jwt
    智慧校园综合管理云平台源码系统主要以校园安全、智慧校园综合管理云平台为核心,以智慧班牌为学生智慧之窗,以移动管理平台、家校沟通为辅。教师—家长一学校—学生循环的无纸化管理模式及教学服务,实现多领域的信息互联互通以及校园管理一体化、信息数据化、数据自动化。智慧班牌融合......
  • SpringBoot进行参数校验的方法详解
    https://www.jb51.net/article/246275.htm在日常的接口开发中,为了防止非法参数对业务造成影响,经常需要对接口的参数进行校验。本文通过示例详细讲解了SpringBoot如何进行参数校验的,感兴趣的可以学习一下 +目录介绍在日常的接口开发中,为了防止非法参数对业务造成影响,经常......
  • 【SpringBoot实现两级缓存】
    springboot中使用Caffeine+Redis实现二级缓存1.依赖准备首先确认Caffeine和redis这两者的依赖已导入(springboot版本为2.4.0):<!--redis与caffeine结合使用构成多级缓存--><dependency><groupId>org.springframework.boot</groupId><artifactId>sprin......
  • 关于自定义程序打包成jar包,并读取配置
    前言在实际开发过程中,我们有时候有把你编写的一段程序打成jar包的需求,而一些配置是需要去配置文件里面读取关于这项目的一些配置,本人在网络上查询了众多的资料,总的来说可以归为3类1.从数据库读取配置 老生常谈,在dao层从数据库获取配置信息,然后返回到Service层进行业务逻辑......