[记录]springboot 设置文件上传大小(tomcat默认1M)

简介: [记录]springboot 设置文件上传大小(tomcat默认1M)

项目场景:

环境:win10

idea2017

springboot

问题描述:

上传文件一直报错,但是我清晰地记得我的接口是好的

然后提示这个瓜娃子东西,让我怀疑我的配置是否正确

Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes.

原因分析:

别扯多的 就是你光配置这个是没用的,仍然会导致你上传文件限制为1M

server:
  server:
    tomcat:
      max-http-form-post-size: -1
  port: 9090
  servlet:
    multipart:
      enabled: true
      max-file-size: 200MB
      max-request-size: 200MB

解决方案:

方案一

步骤1.yml配置

server:
  server:
    tomcat:
      max-http-form-post-size: -1
  port: 9090
  servlet:
    multipart:
      enabled: true
      max-file-size: 200MB
      max-request-size: 200MB

步骤2.添加一个Config类

import org.springframework.boot.web.servlet.MultipartConfigFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.util.unit.DataSize;
import javax.servlet.MultipartConfigElement;
//@Configuration
public class UploadFileConfig {
      @Bean
      public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //文件最大20M
        factory.setMaxFileSize(DataSize.ofMegabytes(20));
        //factory.setMaxFileSize(DataSize.parse("100MB"));
        // 设置总上传数据总大小200M
        factory.setMaxRequestSize(DataSize.parse("200MB"));
        return factory.createMultipartConfig();
    }
}

然后重启解决。


相关文章
|
3月前
|
Java Spring
Springboot+jpa如何设置启动项目表不存在就主动创建,字段没有就新增
Springboot+jpa如何设置启动项目表不存在就主动创建,字段没有就新增
74 0
|
17天前
|
前端开发 Java 应用服务中间件
Springboot对MVC、tomcat扩展配置
Springboot对MVC、tomcat扩展配置
|
4月前
|
Java 应用服务中间件
SpringBoot 项目war包部署 配置外置tomcat方法
SpringBoot 项目war包部署 配置外置tomcat方法
71 0
|
18天前
|
Java 测试技术 数据库
SpringBoot启动时设置不加载数据库
SpringBoot启动时设置不加载数据库
10 0
|
25天前
|
Java 应用服务中间件
Springboot启动的时候初始化的线程池默认配置tomcat
Springboot启动的时候初始化的线程池默认配置tomcat
13 1
|
2月前
|
Java 应用服务中间件 程序员
互联网大厂为什么禁止SpringBoot项目使用Tomcat?
在SpringBoot框架中,我们使用最多的是Tomcat,这是SpringBoot默认的容器技术,而且是内嵌式的Tomcat。
50 1
互联网大厂为什么禁止SpringBoot项目使用Tomcat?
|
3月前
|
Java
SpringBoot利用外部配置,来设置jar包运行配置
SpringBoot利用外部配置,来设置jar包运行配置
38 0
|
3月前
|
Java 应用服务中间件 Maven
Tomcat部署SpringBoot war包
Tomcat部署SpringBoot war包
29 0
|
3月前
|
安全 JavaScript Java
你有没有觉得邮件发送人固定配置在yml文件中是不妥当的呢?SpringBoot 动态设置邮件发送人
你有没有觉得邮件发送人固定配置在yml文件中是不妥当的呢?SpringBoot 动态设置邮件发送人
57 0
|
4月前
|
NoSQL MongoDB 数据库
MongoDB【部署 03】Windows系统安装mongodb并设置用户名密码(无需安装mongosh)及SpringBoot集成报错 Command failed with error 18
MongoDB【部署 03】Windows系统安装mongodb并设置用户名密码(无需安装mongosh)及SpringBoot集成报错 Command failed with error 18
143 0