In previous post, I
explained how to convert java object to XML document. In this post, I am going
to explain how to convert xml to Java object.
Step 1: Define
model object, that maps xml document .
Step 2: Get
JAXBContext instance using Employee model class.
JAXBContext contextObj
= JAXBContext.newInstance(Employee.class);
Step 3: Get
Unmarshaller instance using contextObj.
Unmarshaller unMarshaller
= contextObj.createUnmarshaller();
Step 4:
Call unmarshal method, to map given xml document to Java object.
Employee emp1 = (Employee)
unMarshaller.unmarshal(new
File("/Users/harikrishna_gurram/Documents/employee.xml"));
Following is the
complete working application.
employee.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <employee id="1"> <firstName>Hari krishna</firstName> <lastName>Gurram</lastName> </employee>
Employee.java
import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlType; @XmlType(name = "", propOrder = { "id", "firstName", "lastName" }) @XmlRootElement(name = "employee") public class Employee { private int id; private String firstName; private String lastName; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } @Override public String toString() { return "Employee [id=" + id + ", firstName=" + firstName + ", lastName=" + lastName + "]"; } }
Test.java
import java.io.File; import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Unmarshaller; public class Test { public static void main(String args[]) throws JAXBException { JAXBContext contextObj = JAXBContext.newInstance(Employee.class); Unmarshaller unMarshaller = contextObj.createUnmarshaller(); Employee emp1 = (Employee) unMarshaller.unmarshal(new File("/Users/harikrishna_gurram/Documents/employee.xml")); System.out.println(emp1); } }
Output
Employee [id=0, firstName=Hari krishna, lastName=Gurram]
No comments:
Post a Comment