Spring Boot中设置文件上传大小限制
2024.01.17 08:00浏览量:28简介:在Spring Boot中,文件上传大小限制默认是1MB,但可以通过配置文件进行修改。本文将介绍如何通过两种方式设置文件上传大小限制,包括在application.properties或application.yml文件中设置参数,以及通过复写MultipartConfigElement。
千帆应用开发平台“智能体Pro”全新上线 限时免费体验
面向慢思考场景,支持低代码配置的方式创建“智能体Pro”应用
在Spring Boot中,默认情况下文件上传的大小限制为1MB。这是由于嵌入的Tomcat限制了请求的文件大小。如果你需要更改这个默认值,有两种方式可以实现:一种是修改配置文件,另一种是复写MultipartConfigElement。
一、修改配置文件
你可以在Spring Boot的配置文件中设置max-file-size
和max-request-size
参数来限制上传文件的大小。这两个参数分别表示单个文件的最大值和上传文件总的最大值。
- 在application.properties文件中设置:
spring.servlet.multipart.max-file-size=500MB
spring.servlet.multipart.max-request-size=500MB
- 在application.yml文件中设置:
二、复写MultipartConfigElementspring:
servlet:
multipart:
max-file-size: 500MB
max-request-size: 500MB
如果你需要更复杂的配置,比如自定义文件大小限制的单位或者限制文件上传的次数等,你可以选择复写MultipartConfigElement。以下是一个简单的示例:import org.springframework.web.multipart.MultipartConfigFactory;
import org.springframework.web.multipart.MultipartRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.util.Map;
import java.util.HashMap;
import java.util.List;
import java.util.ArrayList;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.web.servlet.MultipartConfigFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.util.unit.DataSize;
import org.springframework.util.unit.DataUnit;
import org.springframework.web.multipart.*;
import javax.servlet.*;

发表评论
登录后可评论,请前往 登录 或 注册