我需要定义一个平面 POJO,将其(平面)属性映射到其 JSON 规范中的嵌套对象。最好用代码解释
{
"offset": 0,
"pageSize": 10,
"filter": {
"key1":"value1",
"key2": true,
....
}
}
我的 POJO 应如下所示:
public class Pojo {
private int offset;
private int pageSize;
private String key1;
private boolean key2;
}
到目前为止,我已经尝试使用 @JsonProperty
及其 value
属性来注释那些 key
属性
@JsonProperty("filter.key1")
private String key1;
但是当我进入 MVC Controller 时,这些属性虽然在 JSON 中设置,但在解码的 POJO 中为空。
我该如何解决这个问题?我做错了什么?
我绝对不想创建嵌套的子类
最佳答案
可能目前是不可能的。
这是因为 Jackson 目前支持 @JacksonUnwrapped
用于相反的情况,但不支持 @JacksonWrapped
功能请求:https://github.com/FasterXML/jackson-annotations/issues/42
关于java - 在 Jackson 中展平嵌套属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35128383/