SpringBoot后台接收File文件

摘要:
application.yml配置spring:profiles.active:aeolian##MULTIPART(MultipartProperties)#开启multipart上传功能servlet.multipart.enabled:true#文件写入磁盘的阈值servlet.multipart.file-size-threshold:1KB#最大文件大小servlet.multipart

application.yml配置

spring:profiles.active:aeolian
## MULTIPART (MultipartProperties)#开启 multipart 上传功能
  servlet.multipart.enabled: true
#文件写入磁盘的阈值
  servlet.multipart.file-size-threshold:1KB
#最大文件大小
  servlet.multipart.max-file-size:200MB
#最大请求大小
  servlet.multipart.max-request-size:215MB

## 文件存储所需参数#所有通过 REST APIs 上传的文件都将存储在此目录下
file.upload-dir: ./uploads

Controller

@RestController
@RequestMapping("/wx/media")
public classMediaController {

    @Resource
    privateWxCpProperties properties;

    private final Logger logger = LoggerFactory.getLogger(this.getClass());

    /*** 临时文件上传 - 只有一个文件
     * @paramtype
     * @paramrequest
     * @return* @throwsWxErrorException
     * @throwsIOException
     */@RequestMapping(value = "/uploadTemp/{type}", method = {RequestMethod.GET,RequestMethod.POST},produces = "application/json;charset=UTF-8")
    public String sendMessage(@PathVariable String type,HttpServletRequest request) throwsWxErrorException, IOException {
        List<MultipartFile> files = ((MultipartHttpServletRequest) request).getFiles("file");
        MultipartFile multipartFile = null;
        if (files.size()>0){
            multipartFile = files.get(0);
        }else {  /*读取文件失败*/logger.error("临时文件上传失败,未读取到文件!");
            mediaResult.setErrmsg("未读取到上传的文件!请确保Content-Type为multipart/form-data;并且文件参数的key为file");
            returnJsonUtils.toJson(mediaResult);
        }
        /*验证上传文件大小,防止浪费空间内存*/
        long sizeMb = multipartFile.getSize() / (1024 * 1024);
        if (sizeMb > 50){
            mediaResult.setErrmsg("文件过大,详情查看 https://work.weixin.qq.com/api/doc/90000/90135/90253");
            returnJsonUtils.toJson(mediaResult);
        }
        String result = "";
        /*主要业务逻辑*/
        returnresult;
    }
}

免责声明:文章转载自《SpringBoot后台接收File文件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux大文件传输(转)Qt绘图控件qwt绘制等比例坐标图下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MongoDB GridFS 存储大文件

我们经常会遇到这样的场景:上传/下载文件。 有两种思路可以解决这个问题: (1)将文件存储在服务器的文件系统中; (2)将文件存储在数据库中。 如果我们选择(2),那么我们可以使用MongoDB GridFS 用于存储大小超过 16MB 的文件(文档,压缩文件,音视频,软件)。 一、MongoDB GridFS 介绍 MongoDB GridFS 是一个分...

MultipartFile(文件的上传)--CommonsMultipartResolver

一 : applicationContext.xml中:必须声明不然获取不到 <!-- 上传文件的配置 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">...

异步处理MultipartFile -- No such file or directory

背景 项目中开发导入功能,因为数据量比较大,所以要求后端异步操作。发现改为异步之后,相同代码的情况下会报(No such file or directory)异常 2020-02-28 16:22:51.322 [pool-2-thread-1] ERROR c.c.l.m.business.service.impl.CommonServiceImpl -...

SpringBoot2.0 整合 FastDFS 中间件,实现文件分布式管理

本文源码:GitHub·点这里 || GitEE·点这里 一、FastDFS简介 1、FastDFS作用 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件上传、文件下载等,解决了大容量存储和负载均衡的问题。 安装连接: 安装流程详解 2、核心角色 FastDFS是由跟踪服务器(trackerserver)...

Spring MVC 文件上传与下载快速学习

1、文件上传下载的原理   Web 中文件上传下载是和 HTTP 协议分不开的,想要更加深入的理解文件上传和下载,必须要对 HTTP 协议有充分认识。 文件上传   在 TCP/IP 中,最早出现的文件上传机制是 FTP,这是将文件由客户端发送到服务器的标准机制。而在 Web 开发中,使用应用层协议 HTTP,通过在请求头中设置传输的内容类型 Conten...

Java平台下利用aspose转word为PDF实现文档在线预览

原文链接:https://www.jianshu.com/p/86716c7122ef 原始需求 java-web项目某页面,用户可上传word文档,上传后的文档名在页面的表格中展示,需要提供word文档的在线预览、下载功能。 找寻解决方式 需求点主要有三个,分别是word文件的上传、预览和下载,文件的上传和下载就不多说了,主要的难点在于预览。找资料找到...