spring-boot - 表单提交时的文件大小限制
问题描述
在应用程序处理请求时,这两种方法是否相同?
spring.servlet.multipart.max-file-size
- 或者只是在我的控制器中验证文件(或使用@Valid 和实现验证器等使用表单验证)。
两种方法都在应用程序完全收到请求后检查文件大小吗?或者spring.servlet.multipart.max-file-size
在服务器(tomcat)级别设置文件上传大小限制?
解决方案
这似乎spring.servlet.multipart.max-file-size
是一个更好的方法。此属性是为 MultipartResolver bean 自动设置的。这个 bean 是在 Springboot 中自动创建的。在 Spring 和/或 Spring MVC(基本上,不是 Springboot)中,这个 bean 需要手动创建。
MultipartResolver bean 是处理通过表单上传的文件大小的bean。这种方法更好,因为它不会加载整个文件。它通过标头获取文件大小,如果文件大小超过设置为属性值的值spring.servlet.multipart.max-file-size
,则会引发错误。
通过@Valid/Validator 方法验证文件大小是不明智的,因为整个文件将被上传到服务器。
推荐阅读
- javascript - nodemailer html JavaScript在gmail中呈现列表时的模板字符串问题
- c# - 流水线函数作为 EF/MVC 中的实体
- php - GET 请求在实时服务器 Laravel 上不起作用
- django - 不显示 Django 静态图像
- amazon-web-services - AWS Codepipeline 第一阶段
- elasticsearch - 如何在 k8s 上的 elasticsearch 部署中从 helm char 禁用 xpack.security.enabled
- reactjs - 如何在 highcharts 深入图表中显示我经过的路径?
- reactjs - 在 React 的不同组件中呈现用户输入
- selenium - 是否可以暂停/恢复/取消从 Java 中的 selenium 下载
- amazon-web-services - AWS 中的 DBA 角色权限