Spring Boot中设置文件上传大小限制

在Spring Boot中,可以通过以下步骤来设置上传文件的大小:

在application.properties或application.yml文件中,添加以下配置:

对于application.properties:

xml 复制代码
spring.servlet.multipart.max-file-size=128MB  
spring.servlet.multipart.max-request-size=128MB

对于application.yml:

yaml 复制代码
spring:  
  servlet:  
    multipart:  
      max-file-size: 128MB  
      max-request-size: 128MB

这里的max-file-size是单个文件的最大大小,而max-request-size是整个请求的最大大小。可以根据需要调整这些值。

如果使用的是Spring Boot 1.x版本,还需要在启动类上添加MultipartConfigElement注解,如下所示:

java

java 复制代码
import org.springframework.boot.web.servlet.MultipartConfigFactory;  
import javax.servlet.MultipartConfigElement;  
  
@SpringBootApplication  
public class YourApplication {  
  
    public static void main(String[] args) {  
        SpringApplication.run(YourApplication.class, args);  
    }  
  
    @Bean  
    public MultipartConfigElement multipartConfigElement() {  
        MultipartConfigFactory factory = new MultipartConfigFactory();  
        factory.setMaxFileSize("128MB");  
        factory.setMaxRequestSize("128MB");  
        return factory.createMultipartConfig();  
    }  
}

但是,从Spring Boot 2.x开始,这一步就不再需要了,因为Spring Boot会自动配置这些属性。

通过以上配置,可以限制Spring Boot应用中的文件上传大小了。需要注意的是,这些限制不会在客户端进行,而是在服务端。因此,即使客户端尝试上传超过限制的文件,也只有在文件上传到服务器后才会发现这个问题。在实际应用中,可能还需要在客户端进行相应的检查和提示。

相关推荐
葫芦和十三3 小时前
图解 MongoDB 09|explain 再读:从 queryPlanner 到 executionStats
后端·mongodb·agent
葫芦和十三3 小时前
图解 MongoDB 10|覆盖查询:让索引把活干完,根本不用回表
后端·mongodb·agent
大鸡腿同学5 小时前
从 CoT 思维链到 ReAct:智能 Agent 到底是怎么 “思考” 的?
后端
IT_陈寒7 小时前
Vite的静态资源打包让我熬夜到三点,这坑千万别跳
前端·人工智能·后端
小bo波7 小时前
使用Thread子类创建线程 VS 使用Runnable接口创建线程的区别
java·多线程·thread·并发编程·runnable
SamDeepThinking8 小时前
高并发场景下,CompletableFuture与ForkJoinPool该如何取舍?
java·后端·面试
Asize8 小时前
多模态生图:从 Vite 工程化到前端调用 Qwen Image
javascript·人工智能·后端
java小白小8 小时前
SpringBoot(09):缓存实战——穿透、雪崩、击穿的解决方案
后端
java小白小8 小时前
SpringBoot(08):Redis 集成——5 分钟给你的项目加上缓存
后端
LiuMingXin8 小时前
意图与代码之间:AI编程范式全景解读
前端·后端·面试