SpringBoot文件上传、下载超限制记录

记录在 SpringBoot上传、下载文件中遇到的情况。项目以springboot+vue开发,在vue中未设置文件上传下载的限制,所以此次记录的均是springboot侧内容。

上传

  • 报错:
    org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.impl.SizeLimitExceededException: the request was rejected because its size (26320005) exceeds the configured maximum (10485760)
  • 解决:
    在springboot的配置文件中添加如下两行配置
    yml:
servlet:
    multipart:
      max-file-size: 100MB
      max-request-size: 100MB
  • 注意100MB的单位MB需要全部大写

下载

  • 项目中的下载方式是通过流的方式获取的,在定义读取文件时使用了下面的读取大小,导致报错:
byte[] buffer = new byte[1024];
//创建缓冲输入流
BufferedInputStream bis = null;
OutputStream outputStream = null;

try {
   outputStream = response.getOutputStream();
   bis = new BufferedInputStream(new FileInputStream(new File(realPath + "/" + name)));
   int read = bis.read(buffer);

   //通过while循环写入到指定了的文件夹中
   while (read != -1) {
        outputStream.write(buffer, 0, buffer.length);
        outputStream.flush();
        read = bis.read(buffer);
     }
} catch {......}

Caused by: java.io.IOException: 你的主机中的软件中止了一个已建立的连接。

了解到:在读取过程中,还没有读取完毕,主机网关就因时间到了中断了读取。还没有去验证过,先记录一下。

  • 解决,修改一次读取流的大小:
byte[] buffer = new byte[4096];

遇到的文件上传下载异常及处理暂时只有这个,后续在有再添加修改。
—————————————————————
很多的知识都没有掌握,见谅,如有错误请指出,以期进步,感谢!。后续有新的学习,继续补充上来。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值