`
android_mylove
  • 浏览: 399351 次
社区版块
存档分类
最新评论

spring使用文件流形式下载文件

 
阅读更多

网上关于java文件下载的代码不计其数,我在使用spring做文件下载时,开始也是使用的普通的下载方式,但是遇到一个问题,后台老是报错:java.net.SocketException: Connection reset by peer: socket write error,虽然文件是能下载,但是一下载就会报如上错误,google上一大片关于该问题的讨论,但究其原因,还得根据自身项目情况而言,网上的解决办法都没能阻止该错误的出现。我也因为无法确定到底是什么原因导致的,故改用另一种方式下载了,以下是大致源码:


这里的代码和常规用法的主要是以下这句代码:

FileCopyUtils.copy(inputStream, response.getOutputStream());

在上面的代码中,我们并没有显式地向页面输出内容,而是通过上面这句代码完成的,通过这种方式,终于解决了上面那个讨厌的错误的身影!

分享到:
评论

相关推荐

    Java Spring Boot应用程序中实现文件上传和下载功能

    文件下载则是通过`ResponseEntity`作为返回类型,并设置相应的响应头信息,将文件以流的形式写入响应体中。在上述代码中,我们使用`FileInputStream`读取文件,并将其封装为`InputStreamResource`对象,然后设置响应...

    spring配置文件详解

    Spring 配置文件通常以XML文件的形式存在,文件名通常为applicationContext.xml。 在 Spring 配置文件中,我们可以定义各种类型的Bean对象,例如数据源、Session工厂、Hibernate模板、DAO对象、Service对象等等。...

    Spring文件上传和下载所需的jar包.rar

    在Spring框架中,文件上传和下载是常见的功能需求,尤其在构建Web应用程序时。为了实现这一功能,开发者通常会依赖一些外部库,如Apache Commons IO和Apache Commons FileUpload。这两个库提供了强大的文件处理能力...

    spring配置文件:整理总结Spring中XML配

    - 使用简洁形式可以减少XML配置文件中的冗余信息,从而提高其可读性。例如,将下面的XML片段: ```xml <bean id="orderService" class="com.lizjason.spring.OrderService"> ``` 简化为: ```xml ...

    在Spring中使用加密外部属性文件

    在Spring框架中,属性文件是配置关键信息的常用...通过这种方式,你可以在Spring中安全地使用外部属性文件,同时满足系统的安全需求。这种做法不仅可以提高应用的可维护性和部署效率,还能保护敏感信息,降低安全风险。

    精讲RestTemplate文件上传下载与大文件流式下载.docx

    根据提供的文档标题、描述、标签以及部分内容,本文将详细介绍如何使用Spring框架中的`RestTemplate`进行文件上传、普通文件下载及大文件的流式下载。 ### 一、文件上传 在进行文件上传时,通常涉及到以下几个步骤...

    Spring MVC实现文件的上传下载

    文件下载的实现相对简单,我们创建一个Controller方法,返回一个`ResponseEntity`对象,包含文件的二进制内容和相应的HTTP头信息。例如: ```java @GetMapping("/download") public ResponseEntity...

    Java课程实验 Spring Boot 文件上传与下载(源代码+实验报告)

    控制器可以使用@GetMapping注解来处理GET请求,并使用ResponseEntity将文件以流的形式返回给客户端 2.创建文件下载的链接: 在页面中创建一个链接来触发文件下载操作。链接的URL应该包含文件名作为路径参数 通过以上...

    spring配置文件模板

    《Spring配置文件模板详解》 在Java开发领域,Spring框架以其强大的依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented Programming,简称AOP)能力,成为了企业级应用开发的重要选择。而...

    如何从Spring官网下载

    下载并引入Spring框架后,你可以根据官方文档或者教程开始学习和使用Spring的各种特性,如IoC容器、AOP、数据访问、Web MVC等。记得在项目中配置Spring的上下文文件,以便管理和控制你的Bean。 总的来说,从Spring...

    Spring 最全约束配置文件

    Spring支持多种类型的配置方式,其中XML配置文件是最常见的一种形式。本文将详细介绍一个典型的Spring XML配置文件所包含的关键元素。 #### 三、配置文件结构分析 1. **根元素**:`<beans>`是配置文件的根元素,...

    Spring MVC实现文件的上传和下载

    - **流操作**:通过`InputStream`读取文件内容,然后使用`ServletOutputStream`将内容写入响应流,发送到客户端。 - **断点续传**:对于大文件下载,可以考虑实现断点续传功能,允许用户在中断后从上次停止的地方...

    Spring MVC框架实现上传下载

    对于文件下载,你可以创建一个方法,读取服务器上的文件并将其写入响应流中: ```java @RequestMapping("/download/{fileName}") public void downloadFile(@PathVariable("fileName") String fileName, ...

    Java多个文件根据URL下载后打包zip导出.zip

    另外,`java.nio`包中的`Channels`和`Buffers`可以提高大文件下载的效率。 2. **文件I/O操作**:下载的数据需要保存到本地文件系统。Java的`java.io.File`类用于文件操作,如创建、读写和删除。`FileOutputStream`...

    Spring读取配置文件原理(Spring如何依赖注入的)

    总的来说,Spring通过读取配置文件(XML或注解形式),解析并生成BeanDefinition,然后根据BeanDefinition实例化bean并进行依赖注入,从而实现了对象的管理。理解这一过程有助于我们更好地设计和使用Spring框架,...

    Vue调用SpringBoot后台实现文件下载功能

    本案例探讨的就是如何使用Vue调用SpringBoot后台来实现文件下载功能,这对于构建交互性强、用户体验良好的Web应用来说是必不可少的。 首先,我们需要了解Vue.js的基本知识。Vue是一个轻量级的JavaScript框架,它...

    文件服务器mino实现文件存储和文件预览接口

    文件下载则是通过获取对象并返回其内容来实现的。在接收到文件请求时,SpringBoot应用会使用MinIO的GetObject方法来获取指定对象,然后将对象内容作为响应返回给客户端。为了优化下载性能,MinIO支持分块下载,即大...

    spring_mybatis 整合jar包

    MyBatis允许开发者编写XML或注解形式的SQL映射文件,从而将SQL操作与Java代码分离,提高了代码的可读性和可维护性。在与Spring整合后,可以通过Spring的ApplicationContext来管理SqlSessionFactory和Mapper接口,...

    Spring-MVC的文件上传,下载的技术攻克

    文件下载在Spring MVC中相对简单。通常,我们可以通过创建一个返回`ResponseEntity`的控制器方法来实现。例如: ```java @GetMapping("/download") public ResponseEntity<InputStreamResource> downloadFile() ...

    Spring MVC文件上传

    在Spring MVC框架中,文件上传是一项常见的功能,它允许用户通过Web界面上传本地文件到服务器。这篇文章将深入探讨如何在Spring MVC中实现文件上传,并基于提供的链接和文件名称列表进行详细解析。 首先,理解文件...

Global site tag (gtag.js) - Google Analytics