java Jackson:使用嵌套对象对对象进行JSON序列化,将子字段合并到所属类中
假设我有如下Java类:
public class A {
public String name;
public B b;
}
public class B {
public int foo;
public String bar;
}
我想将A
的一个实例序列化为JSON。我将使用Jackson中的ObjectMapper
类:
A a = new A(...);
String json = new ObjectMapper().writeValueAsString(a);
使用此代码,我的JSON如下所示:
{
"name": "MyExample",
"b": {
"foo": 1,
"bar": "something"
}
}
相反,我希望注释我的Java类,以便生成的JSON看起来像这样:
{
"name", "MyExample",
"foo": 1,
"bar": "something"
}
有什么想法吗
# 1 楼答案
我个人认为,最好将结构映射到另一个结构,而不要进行额外的转换
但如果你真的想按计划去做,就用Jackson 2吧。x、 并在属性
b
上添加@JsonUnwrapped
注释。这应该能奏效