接收 XML
响应时,有两种主要的解决方案将 xml 解码为 DTO 对象。为什么人们应该更喜欢 JAXB
而不是 jackson
,或者相反?
JAXB:
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(xmlString));
unmarshaller.unmarshal(reader, DtoObject.class);
jackson :
mapper = new ObjectMapper() / new XmlMapper();
mapper.readValue(xmlString, DtoObjectc.class);
最佳答案
在我看来,我会使用JAXB,原因如下。
- 它相当成熟,是 JDK 的一部分。
- 我不需要使用第三方附加库
- 与 JAXB 相比,Jackson2 XML 转换是新的,JAXB 已在业界存在了相当长的时间,并且有很多社区。li>
但是我并不是说好或坏。同样,它是开发人员可以选择使用的。
关于java - 用于 xml 解码的 JAXB 或 Jackson?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57059090/