
In order to convert a JSON String into XML we will need to make use of the two Jackson Libraries,
Gradle:implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.13.4'
implementation group: 'com.fasterxml.jackson.dataformat', name: 'jackson-dataformat-xml', version: '2.13.4'
Maven:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.4</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.13.4</version>
</dependency>
We will first convert the JSON String to Java Object using ObjectMapper, then to XML String using XmlMapper class,
Employee POJO:public class Employee {
String empName;
int empAge;
String empDept;
public String getEmpName() {
return empName;
}
public void setEmpName(String empName) {
this.empName = empName;
}
public int getEmpAge() {
return empAge;
}
public void setEmpAge(int empAge) {
this.empAge = empAge;
}
public String getEmpDept() {
return empDept;
}
public void setEmpDept(String empDept) {
this.empDept = empDept;
}
}
JavaJsonToXML.java
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import java.io.IOException;
public class JavaJsonToXML {
public static void main(String[] args) {
try {
//Step 1: JSON String
String jsonString = "{\"empName\":\"Andy\",\"empAge\":22,\"empDept\":\"Insurance\"}";
ObjectMapper objectMapper = new ObjectMapper();
//Step 2: JSON String to Java Object
Employee employee = objectMapper.readValue(jsonString, Employee.class);
XmlMapper xmlMapper = new XmlMapper();
//3. JavaObject to XML String
String xmlString = xmlMapper.writeValueAsString(employee);
System.out.println(xmlString);
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Output:
<Employee><empName>Andy</empName><empAge>22</empAge><empDept>Insurance</empDept></Employee>
Provide Feedback For This Article
We take your feedback seriously and use it to improve our content. Thank you for helping us serve you better!
😊 Thanks for your time, your feedback has been registered!
Comments & Discussion
Facing issues? Have questions? Post them here! We're happy to help!