假设我有看起来像这样的Java类:
public class A {
public String name;
public B b;
}
public class B {
public int foo;
public String bar;
}
我想将A
实例序列化为 JSON。我将使用杰克逊的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"
}
有什么想法吗?
就我个人而言,我认为最好将结构映射到结构,而不是进行额外的转换。
但是,如果您确实想采用该计划,只需使用Jackson 2.x,并在属性b
上添加@JsonUnwrapped
注释。这应该可以解决问题。