springboot 项目限制上传文件大小
springboot 中修改限制的方法记录如下两种
本人主要是在做富文本编辑器图片上传时,超过1M的图片前端就报跨域错误,后端报超出文件1024错误
由于在http post请求中默认size是1024,这样我的百度富文本的配置就不会起作用,富文本最小也要1MB,所以要修改文件大小限制,以下两种方法借鉴于这位哥们的博客,根据自己实际情况做了修改,对工作中坑做个记录,方便自己以后查找
https://blog.csdn.net/shi0299/article/details/69525848
1.在 */.properties或者 */ .yml 配置文件中直接配置
#单个文件大小限制
#spring.http.multipart.maxFileSize = 10Mb
## 总的大小限制,适用于所有MultipartFile文件
##spring.http.multipart.maxRequestSize=100Mb
但是在springboot2.0.3版本中好像无效,也可能是我实验出错,修改为
spring.servlet.multipart.max-file-size=5Mb
spring.servlet.multipart.max-request-size=50Mb
这样就启作用了
需要注意的是单位Mb 在新的版本中需要大写否则启动失败,如下图
2. 在启动类中配置bean管理也可以
/**
* 文件上传配置
* @return
*/
@Value("${spring.servlet.multipart.max-file-size}")
private String maxSize;
@Bean
public MultipartConfigElement multipartConfigElement() {
MultipartConfigFactory factory = new MultipartConfigFactory();
// 单个数据大小
factory.setMaxFileSize(maxSize); // KB,MB
/// 总上传数据大小
factory.setMaxRequestSize("102400KB");
return factory.createMultipartConfig();
}
要注意在类中加@configuration 注解,否则不起作用
相比于第一种方式,第二种就繁琐了,能用一句配置就解决的问题,坚决不写代码