<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<employee empid="1111">
<address>
<city>Noida</city>
<locality>Sector-88</locality>
<pin>201301</pin>
</address>
<address>
<city>Kannauj</city>
<locality>Kamala Nagar</locality>
<pin>209724</pin>
</address>
<name>Dinesh Rajput</name>
<salary>100000.0</salary>
</employee>
package com.doj.jaxb;
import java.util.List;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
/**
* @author Dinesh Rajput
*
*/
@XmlRootElement
public class Employee {
private int empid;
private String name;
private float salary;
private List<Address> address;
@XmlAttribute
public int getEmpid() {
return empid;
}
public void setEmpid(int empid) {
this.empid = empid;
}
@XmlElement
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@XmlElement
public float getSalary() {
return salary;
}
public void setSalary(float salary) {
this.salary = salary;
}
@XmlElement
public List<Address> getAddress() {
return address;
}
public void setAddress(List<Address> address) {
this.address = address;
}
}
package com.doj.jaxb;
/**
* @author Dinesh Rajput
*
*/
public class Address {
private String locality;
private String city;
private int pin;
public String getLocality() {
return locality;
}
public void setLocality(String locality) {
this.locality = locality;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public int getPin() {
return pin;
}
public void setPin(int pin) {
this.pin = pin;
}
}
package com.doj.jaxb;
import java.io.File;
import java.util.List;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
/**
* @author Dinesh Rajput
*
*/
public class JaxbUnmarshalTest {
/**
* @param args
* @throws JAXBException
*/
public static void main(String[] args) throws JAXBException {
File file = new File("employee.xml");
JAXBContext jaxbContext = JAXBContext.newInstance(Employee.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
Employee emp = (Employee) jaxbUnmarshaller.unmarshal(file);
System.out.println("Employee-"+emp.getEmpid()+" | "+emp.getName()+" | "+emp.getSalary());
System.out.println("Addresses: ");
List<Address> list = emp.getAddress();
for(Address address : list){
System.out.println(address.getLocality()+" | "+address.getCity()+" | "+address.getPin());
}
}
}

Labels: JAXB