SpringBoot文件上传的使用以及原理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot文件上传的使用以及原理相关的知识,希望对你有一定的参考价值。

参考技术A 这是因为上传的内容超出了 SpringBoot 默认配置的上传文件的大小 1MB

通过该注解可以指导,在配置类中修改 spring.servlet.multipart 下的配置项即可

可以看到有一个 max-file-size 的配置项,默认是"1MB",说明修改该配置项为想要限制的大小即可,这里我改成10MB,而 max-request-size 是多文件上传时,总的一次提交的最大大小,默认是10MB,我改成100MB

可以看到,在选择使用哪个解析器去处理请求(也就是根据映射关系,找到请求的 url 对应的用 @RequestMapping 注解过的方法)之前,会先调用 checkMultipart() 检查一下当前的请求是否是一个文件上传的请求

前面已经分析了,文件上传字段的注解是 @RequestPart ,而相应的解析器是 RequestPartMethodArgumentResolver ,所以我们需要先找到该解析器的执行流程先

总体原理就是根据注解的类型以及注解中的参数,构造出一个映射,这个映射是以注解 @RequestPart 中的 name 为key,而上传的文件为value,根据这个映射就可以给相应的参数赋值,这样我们就可以从 MultipartFile 对象中调用相应方法对上传的文件做想要的操作了

以上是关于SpringBoot文件上传的使用以及原理的主要内容,如果未能解决你的问题,请参考以下文章

springboot使用MultipartFile上传文件以及File与MultipartFile互转

springboot使用MultipartFile上传文件以及File与MultipartFile互转

springboot上传图片文件相关知识

springboot多文件上传

springboot zip文件上传无法解压

springBoot 上传文件到服务器,头像预览功能