这是this question on StackOverflow的变体,但是我的情况是我的json看起来像
{
"point": {
"meta": {
"x": "100",
"y": "200",
"z": "300"
},
}
}
并希望XML看起来像
<point x="100" y="100" z="100"/>
但是现在我有一些看起来像
的东西<point>
<meta x="100" y="200" z="300"/>
</point>
我有一个PointMeta
类,它基本上是属性的包装器,有没有办法告诉Jackson我希望它将整个类视为顶级{{1}中的属性集合} class?
我也使用龙目岛来避免样板,吸气剂和制定者不是问题。
我尝试过像
这样的东西Point
然而,杰克逊忽略了点@Data
class Point {
@JacksonXmlProperty(isAttribute=true)
private PointMeta meta;
}
@Data
class PointMeta {
@JacksonXmlProperty(isAttribute=true)
private String x;
// And so on for y and z.
}
中的第一个注释,没有任何警告或错误。我想告诉Jackson,这个字段应该是这个类的XML属性。