Jackson 是一個(gè)Java庫(kù),它提供了各種功能用于處理JSON格式數(shù)據(jù)。其中,使用 Jackson 將 XML 轉(zhuǎn)換為 JSON 是其中的一個(gè)重要功能。
我們需要使用 jackson-dataformat-xml 庫(kù)來(lái)完成這個(gè)轉(zhuǎn)換。以下是一個(gè)簡(jiǎn)單的示例:
ObjectMapper objectMapper = new XmlMapper(); String xml = "<person><name>John</name><age>28</age></person>"; JsonNode jsonNode = objectMapper.readTree(xml.getBytes()); String json = objectMapper.writeValueAsString(jsonNode); System.out.println(json);
首先,我們創(chuàng)建一個(gè) ObjectMapper 對(duì)象,它是 Jackson 的核心組件之一,用于序列化和反序列化 Java 對(duì)象和 JSON。
然后,我們使用 XmlMapper 將 XML 轉(zhuǎn)換為 Jackson 的樹(shù)節(jié)點(diǎn)(JsonNode)。XmlMapper 與 ObjectMapper 的使用方式相似,但可以處理 XML 格式數(shù)據(jù)。
接下來(lái),我們將 JsonNode 轉(zhuǎn)換為 JSON 字符串。這里需要注意,Jackson 會(huì)自動(dòng)將 XML 中的嵌套元素轉(zhuǎn)換為 JSON 格式中的嵌套對(duì)象。
最后,我們打印出 JSON 字符串。輸出結(jié)果如下:
{"person":{"name":"John","age":"28"}}
可以看到,XML 被成功地轉(zhuǎn)換為了 JSON 格式。