springboot上传文件大小限制设置
有一次由于项目升级,我修改了原来项目接收文件的方法,原来的项目是使用原生的servlet来接收文件后来,我修改为使用springboot的方式来接收文件,上传小文件的时候没发现有问题,后来上传大文件就总是报错通过看错误代码可以知道,原来springboot对上传的文件大小有限制的,上传的文件大小超过了上限所以报错后面问题被解决了,为了能够避免再次发生这样的错误,因此,将这次经历记录下来针对这个问题
·
有一次由于项目升级,我修改了原来项目接收文件的方法,原来的项目是使用原生的servlet来接收文件
后来,我修改为使用springboot的方式来接收文件,上传小文件的时候没发现有问题,后来上传大文件就总是报错
通过看错误代码可以知道,原来springboot对上传的文件大小有限制的,上传的文件大小超过了上限所以报错
后面问题被解决了,为了能够避免再次发生这样的错误,因此,将这次经历记录下来
针对这个问题,有两个解决方法,如下
在启动类添加如下代码
注意是启动类。main那里
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
//单个文件最大限制
factory.setMaxFileSize("10240KB"); //KB,MB
// 设置总上传数据总大小
factory.setMaxRequestSize("102400KB");
return factory.createMultipartConfig();
}
根据spring boot 版本不同在application.properties文件添加不同的配置
Spring Boot 1.3 或之前的版本,配置:
multipart.maxFileSize = 100Mb
multipart.maxRequestSize=150Mb
Spring Boot 1.4 版本后配置更改为:
spring.http.multipart.maxFileSize = 100Mb
spring.http.multipart.maxRequestSize = 150Mb
Spring Boot 2.0 之后的版本配置修改为: 单位Mb改为MB了
spring.servlet.multipart.max-file-size = 100MB
spring.servlet.multipart.max-request-size = 150MB
multipart.maxFileSize=10Mb是设置单个文件的大小,
multipart.maxRequestSize=100Mb是设置单次请求的文件的总大小
如果是想要不限制文件上传的大小,那么就把两个值都设置为-1
更多推荐
已为社区贡献2条内容
所有评论(0)