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 小时前
学完循环我才发现,我写的不是死循环,是死机
后端
霸道流氓气质3 小时前
AI智能博客平台实战:RAG增强写作、多Agent协作与语义检索的Vue3 + Spring AI全栈实现
java·人工智能·spring
打工仔折腾 AI3 小时前
LangChain 工具调用实战:从 Tool 定义到 Agent 执行链路拆解
java·前端·人工智能·后端·python·langchain·ai agent 实战
哦虎!3 小时前
【JavaEE】网络原理 - TCP/IP
java
东风微鸣3 小时前
把 Tailscale 接进 Prometheus 监控
java·数据库·prometheus
汉堡大王95274 小时前
单次输出拉到100万Token:拆完 Gemini 4 Argon 的续写协议,才看懂谷歌这7个月在憋什么
前端·人工智能·后端
看浪的路人4 小时前
第9讲:大模型应用监控与可观测性——OpenTelemetry + Prometheus + Grafana 全链路追踪
java·前端·spring
大侠归来4 小时前
事务能回滚吗?Pipeline 算事务吗?
java·数据库·oracle
蜗牛互联网4 小时前
Python调用Gemini Structured Outputs实现工单路由门禁
java·开发语言·人工智能·python