Home > Java > javaTutorial > body text

How to convert JSON array to XML in Java?

王林
Release: 2023-09-06 12:18:41
Original
1356 people have browsed it

How to convert JSON array to XML in Java?

How to convert JSON array to XML in Java?

JSON (JavaScript Object Notation) and XML (eXtensible Markup Language) are two commonly used data exchange formats. In Java, we often need to convert between JSON and XML. This article will explain how to convert a JSON array to XML.

First, we need to use a Java library to handle the conversion of JSON and XML. In this article, we will use the Jackson library to process JSON and the dom4j library to process XML. You can add the following dependencies in Maven to use them in your project:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.12.2</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.12.2</version>
</dependency>
<dependency>
    <groupId>org.dom4j</groupId>
    <artifactId>dom4j</artifactId>
    <version>2.1.3</version>
</dependency>
Copy after login

Next, we will walk through an example to demonstrate how to convert a JSON array to XML. Suppose we have the following JSON array:

[
  {
    "name": "Alice",
    "age": 25
  },
  {
    "name": "Bob",
    "age": 30
  },
  {
    "name": "Charlie",
    "age": 35
  }
]
Copy after login

We first need to create a Java class to represent each object in the JSON:

public class Person {
    private String name;
    private int age;
    
    // getters and setters
}
Copy after login

Then we can use the Jackson library to convert the JSON array into Java objects List of:

import com.fasterxml.jackson.databind.ObjectMapper;

public class JsonToXmlConverter {
    public static void main(String[] args) throws Exception {
        String json = "[{"name":"Alice","age":25},{"name":"Bob","age":30},{"name":"Charlie","age":35}]";
        
        ObjectMapper objectMapper = new ObjectMapper();
        List<Person> persons = objectMapper.readValue(json, new TypeReference<List<Person>>() {});
    }
}
Copy after login

Now, we have converted the data in JSON into a list of Java objects. Next, we will convert it to XML using the dom4j library.

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

public class JsonToXmlConverter {
    public static void main(String[] args) throws Exception {
        // JSON to Java objects
        String json = "[{"name":"Alice","age":25},{"name":"Bob","age":30},{"name":"Charlie","age":35}]";
        ObjectMapper objectMapper = new ObjectMapper();
        List<Person> persons = objectMapper.readValue(json, new TypeReference<List<Person>>() {});

        // Java objects to XML
        Document document = DocumentHelper.createDocument();
        Element root = document.addElement("persons");

        for (Person person : persons) {
            Element personElement = root.addElement("person");
            personElement.addElement("name").setText(person.getName());
            personElement.addElement("age").setText(Integer.toString(person.getAge()));
        }

        String xml = document.asXML();
        System.out.println(xml);
    }
}
Copy after login

Run the above code, the following XML will be output:

<persons>
  <person>
    <name>Alice</name>
    <age>25</age>
  </person>
  <person>
    <name>Bob</name>
    <age>30</age>
  </person>
  <person>
    <name>Charlie</name>
    <age>35</age>
  </person>
</persons>
Copy after login

Through the above code example, we can see how to use the Jackson library to convert the JSON array into a list of Java objects, and then use the dom4j library Convert Java objects to XML.

To summarize, this article explains how to convert JSON array to XML in Java. We used the Jackson library to process JSON and the dom4j library to process XML. I hope this article helps you understand the conversion between JSON and XML.

The above is the detailed content of How to convert JSON array to XML in Java?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!