【发布时间】:2019-01-04 09:18:51
【问题描述】:
我有这个(模仿实际生产数据)xml,需要转换成JSON如下。(我使用的是Jackson2.8):
<testCode code="ABC" lang="java" />
我为此拥有的 POJO 如下:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Phone", propOrder = {
"descriptions"
}
@XmlRootElement(name="phone")
public class Phone extends PhoneBase {
protected TestCode testCode;
getter()
setter();
}
测试代码如下:
XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "TestCode", propOrder = {
"code"
})
public class TestCode {
protected String descriptor;
@XmlAttribute(required = true)
protected String code;
@XmlAttribute
protected String lang;
}
在将其转换为 JSON 时,我得到以下信息:
testCode: {
code: "ABC",
lang: "java"
}
虽然我想要以下内容:
testCode: "ABC"
请注意,我忽略了任何其他属性并扁平化“代码”。此外,不需要“编码”它自己。
有人可以建议任何指针吗?我试过 XmlElementWrapper 但它不起作用。
【问题讨论】: