<?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