You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 2.1.3配置file-size-threshold绑定DataSize失败如何解决

问题产生原因

Spring Boot 2.1.0及以上版本对文件上传相关的大小配置做了类型重构,原先生效的长整型数值配置(默认单位为MB)被替换为org.springframework.util.unit.DataSize类型,2.1.x版本自带的字符串转DataSize转换器解析规则限制极多:

  • 不会自动去除配置值首尾的空白字符(包括半角空格、制表符、全角空格等),从异常日志打印的配置值可以看到,配置项值2KB末尾多了一个多余的半角空格,转换器无法识别带后缀空格的单位标识,直接抛出转换异常
  • 强制要求数值和单位之间不能有任何间隔字符,单位仅支持大写标准后缀:B、KB、MB、GB、TB,小写单位写法(如2kb、10mb)、数值单位中间加空格的写法(如2 KB)都无法被正常解析
  • 未写单位的纯数值会被默认识别为字节数
修复方案

直接修正配置项的写法即可,去掉值首尾的所有多余空白,保证数值和单位直接拼接无间隔:

spring.servlet.multipart.file-size-threshold=2KB

如果修正后仍存在解析问题,可以直接写对应字节数,不需要加单位,不存在解析兼容问题:

# 2KB 等价于 2048 字节
spring.servlet.multipart.file-size-threshold=2048

修改完成后重启应用即可正常启动,不会再抛出配置绑定异常。

内容的提问来源于stack exchange,提问作者andrefilipeos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 05:31:01