【发布时间】:2019-04-04 17:42:10
【问题描述】:
来自API 的XML 响应,我想解析是这样的:
<Envelope>
<Body>
<RESULT>
<SUCCESS>TRUE</SUCCESS>
<EMAIL>somebody@domain.com</EMAIL>
... more stuff...
</RESULT>
</Body>
</Envelope>
我想将RESULT 的字段放入一个对象中。
我可以创建 3 个类,一个用于包含正文的信封,一个用于包含结果的正文,一个用于结果。但是,有捷径吗?
例如只需为结果数据创建一个对象,如下所示:
@JacksonXmlRootElement(localName = "Envelope/Body/RESULT")
public class Result {
@JacksonXmlProperty(localName = "SUCCESS")
private boolean success;
@JacksonXmlProperty(localName = "EMAIL")
private String Email;
:
}
我会像这样在一行中进行解析:
return theXmlMapper.readValue(resultPayload, Result.class);
【问题讨论】:
标签: java xml jackson deserialization xml-deserialization