小编ABu*_*cin的帖子

Java Jackson - 在反序列化时阻止float到int的转换

我有一个JSON有效载荷,具有以下结构......

{
"age": 12
}
Run Code Online (Sandbox Code Playgroud)

...映射到以下类:

public class Student {

    private Integer age;

    public Integer getAge(){return age;}
    public void setAge(Integer age){this.age = age;}
}
Run Code Online (Sandbox Code Playgroud)

此时,如果用户为其提交浮点值age,则忽略小数,并且仅接受整数部分.我想要做的是阻止用户提交具有浮点值的有效负载age(见下文)并抛出异常(类似于"第8行第5行的字段'年龄'的无效JSON值" - 这是标准反序列化失败时的消息).

{
"age": 12.7 // will be truncated to 12
}
Run Code Online (Sandbox Code Playgroud)

我正在考虑为数值实现自定义反序列化器,但想知道是否有更简单的方法来实现这一点.

java json jackson deserialization

8
推荐指数
3
解决办法
6468
查看次数

标签 统计

deserialization ×1

jackson ×1

java ×1

json ×1