展平jackson中的嵌套属性

我需要定义一个平面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控制器时,这些属性虽然在JSON中设置,但在解码的POJO中为空。

我怎样才能解决这个问题? 我做错了什么?

我绝对不想创建嵌套的子类

可能目前不可能。

这是因为Jackson目前支持@JacksonUnwrapped用于相反的情况,但没有@JacksonWrapped

  • 在这里讨论: http : //jackson-users.ning.com/forum/topics/use-annotations-to-skip-levels
  • function请求: https : //github.com/FasterXML/jackson-annotations/issues/42