JAXB 2.0 - Reading XML File in Java

In this post, We are going to read the XML file created in the previous post.We are using all other file from the previous post except Writer.java.

Reading XML file in Java


Below the code to read the sample XML file - department.xml.

department.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Department>
    <Department Id>1</Department Id>
    <Department Name>HR</Department Name>
    <Employees>
        <Employee>
            <Employee Id>1</Employee Id>
            <Employee Name>Abhay</Employee Name>
            <Employee Age>12</Employee Age>
        </Employee>
        <Employee>
            <Employee Id>2</Employee Id>
            <Employee Name>Pawan</Employee Name>
            <Employee Age>32</Employee Age>
        </Employee>
        <Employee>
            <Employee Id>3</Employee Id>
            <Employee Name>Jai</Employee Name>
            <Employee Age>18</Employee Age>
        </Employee>
        <Employee>
            <Employee Id>4</Employee Id>
            <Employee Name>Rajan</Employee Name>
            <Employee Age>21</Employee Age>
        </Employee>
    </Employees>
</Department>

Reader.java

package com.javainstance;

import java.io.File;
import java.util.List;

import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;

/**
 * @author javainstance
 *
 */
public class Reader {

public static void main(String[] args) {

try {

File xmlFile = new File("department.xml");
JAXBContext context = JAXBContext.newInstance(Department.class);

Unmarshaller unmarshaller = context.createUnmarshaller();
Department dept = (Department) unmarshaller.unmarshal(xmlFile);

System.out.println(
"Department Id:" + dept.getDepartmentId() + " " + "Department Name:" + dept.getDepartmentName());
System.out.println();
System.out.println("Employees Details in Department:" + dept.getDepartmentName());
System.out.println();
List<Employee> employeeList = dept.getEmployees();
employeeList.forEach((Employee) -> {
System.out.println("Employee Id: " + Employee.getEmployeeId() + " " + "Employee Name: "
+ Employee.getEmployeeName() + " " + "Employee Age: " + Employee.getEmployeedAge());
}

);
} catch (JAXBException e) {
e.printStackTrace();
}

}

}

Output:

Department Id:1 Department Name:HR

Employees Details in Department:HR

Employee Id: 1 Employee Name: Abhay Employee Age: 12
Employee Id: 2 Employee Name: Pawan Employee Age: 32
Employee Id: 3 Employee Name: Jai Employee Age: 18
Employee Id: 4 Employee Name: Rajan Employee Age: 21


Creating XML file from Java Object -Marshalling

Download Complete Code from Github

Give your suggestion in comments.
If you like the post Share with your friends on social network.





JAXB 2.0 - Reading XML File in Java JAXB 2.0 - Reading XML File in Java Reviewed by JavaInstance on 2:39:00 AM Rating: 5

No comments:

Powered by Blogger.