java examples
Home Java Examples Resources Java Interview Questions
Brainpower SEO

How to convert an XML persistence to Java Bean?

In the previous example you can see how to convert a bean into an XML persistence. Now we'll do the opposite, converting the XML back to a bean. For the BeanToXML class use in this example please refer to How to convert a bean to XML persistence? example.

package com.javacoderanch.example.bean;

import java.beans.XMLDecoder;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;

public class XmlToBean {
    public static void main(String[] args) {
        try {
            XMLDecoder decoder = new XMLDecoder(new BufferedInputStream(
                    new FileInputStream("Bean.xml")));

            //
            // Reads the next object from the underlying input stream.
            //
            BeanToXML bean = (BeanToXML) decoder.readObject();
            decoder.close();

            System.out.println("ID              = " + bean.getId());
            System.out.println("Item Name       = " + bean.getItemName());
            System.out.println("Item Colour     = " + bean.getItemColour());
            System.out.println("Item Quantities = " + bean.getItemQuantities());
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}

Here is our Bean.xml persistence file:

<?xml version="1.0" encoding="UTF-8"?> 
<java version="1.6.0_02" class="java.beans.XMLDecoder"> 
 <object class="com.javacoderanch.example.bean.BeanToXML"> 
  <void property="id"> 
   <long>1</long> 
  </void> 
  <void property="itemColour"> 
   <string>Dark Red</string> 
  </void> 
  <void property="itemName"> 
   <string>T-Shirt</string> 
  </void> 
  <void property="itemQuantities"> 
   <int>100</int> 
  </void> 
 </object> 
</java> 

The result are:

ID              = 1
Item Name       = T-Shirt
Item Colour     = Dark Red
Item Quantities = 100