springboot项目开发过程中, api的数据交互基本都是使用json格式 当我们在使用 @RequestBody 绑定到 Java对象的时候,会碰到默认的数据类型转换问题.
比如我们有严格的数据要求, 如Integer类型的字段, 不允许传人非整型数据时,就需要调整json的反序列化默认配置
场景示例如下:
可以看出,此时并非我们预期的报错, 而是默认处理了, 将小数强制转换成了整数 . 这在需要严格的数据要求情况下是觉得不允许的.
那么我们怎么解决这个问题, 让程序抛错了 ???
翻看源代码 com.fasterxml.jackson.databind.DeserializationFeature
里面的配置项
默认启用了 float to int
的配置项
现在问题找到了, 我们只需将此配置改为false
即可