用java把xml转换成json
时间: 2024-10-14 18:02:10 浏览: 32
在Java中,将XML数据转换为JSON通常可以使用一些库,比如Jackson、Gson、DOM4J或JAXB。这里以Jackson为例说明:
首先,你需要添加Jackson的依赖到你的项目中。如果你使用Maven,可以在pom.xml文件中添加:
```xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.8</version> <!-- 或者最新版本 -->
</dependency>
```
然后,你可以使用`ObjectMapper`类的`readValue()`方法将XML字符串转换为JSON对象。例如:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import org.w3c.dom.Document;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
public String xmlToJson(String xml) throws Exception {
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(new InputSource(new StringReader(xml)));
ObjectMapper mapper = new ObjectMapper();
Object jsonNode = mapper.readValue(doc, Object.class); // 如果XML内容对应的是复杂对象,这里应指定具体的类型
return mapper.writeValueAsString(jsonNode);
}
```
这个例子中,我们假设输入的XML是一个有效的文档,并将其解析为一个`Document`对象,然后通过`ObjectMapper`将其转换为JSON字符串。
阅读全文