我有一个表单对象,它由 Spring 自动正确填充。在这个表单对象中,我有一个字段:
CommonsMultipartFile file;
用户可以上传文件,并且表单对象正确包含该文件。一切都很好。但是,我想确保用户无法上传大于 2 MB 的文件。我已经检查过了,也有效。
问题:当我上传一个非常大的文件(比如 500MB)时,我的表单对象内存中最终会出现一个如此大的文件(我假设是这样)。有什么办法可以防止这种情况发生吗?例如,有没有什么方法可以使用 validator 检查文件大小,但不需要在检查之前加载整个文件?
最佳答案
假设您使用的是CommonsMultipartResolver
,那么您可以使用其maxUploadSize
属性来限制这一点。请参阅docs举个例子。
关于java - 如何在使用 CommonsMultipartFile 检查文件大小时防止文件完全加载到内存中? (java, Spring ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5029259/