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

相关推荐
葫芦和十三1 小时前
图解 MongoDB 05|文档模型设计:内嵌 vs 引用,反范式不是免费午餐
后端·mongodb·agent
不能放弃治疗5 小时前
单 Agent 实现模式
后端
IT_陈寒7 小时前
Redis内存爆了,原来我漏掉了这个致命配置
前端·人工智能·后端
小bo波7 小时前
从"任意文件复制"深挖Java I/O:字符流与字节流的本质抉择
java·nio·io流·后端开发·文件复制
fliter8 小时前
最后一块拼图:用 bitvec 构造 IPv4 包,真正做出自己的 Ping
后端
用户3521802454759 小时前
🎆从 Prompt 到 Skill:让 Spring AI Agent 学会"装新技能"
人工智能·spring boot·ai编程
fliter9 小时前
用 Rust 解析并生成 ICMP 包:checksum、nom 与 cookie-factory
后端
蝎子莱莱爱打怪9 小时前
XZLL-IM干货系列 03|消息 ID 设计:一个 UUID 搞不定的事,我用两个 ID 解决了
后端·面试·开源
fliter9 小时前
从 panic 到 Result:用 Rust 重新整理一个 ping 项目的错误处理
后端
森蓝情丶9 小时前
我给 AI 搭了个法庭:一个前端仔的 LangGraph 实战全记录
前端·后端