Write code to serialize and deserialize java collection objects

2 posts / 0 new
Last post
heartin
Write code to serialize and deserialize java collection objects

Create a class that has a HashMap as a member object. Write code to serialize and deserialize that class. Also, write utility methods to print the HashMap and use it to print data before and after serialization.

Was it useful?
sneha
Program

package com.javajee.forums;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map.Entry;

public class SerializableExample implements Serializable {

  private static final long serialVersionUID = 1L;
  HashMap<Integer, String> map=new HashMap<Integer, String>();
 
// METHOD FOR SERIALIZATION

public void serializeMapClass(){
    try{
    FileOutputStream fs = new FileOutputStream("testSer.ser");
    ObjectOutputStream os = new ObjectOutputStream(fs);
    os.writeObject(this);
    os.close();
    }
    catch(Exception e){
      e.printStackTrace();
    }
  }
 
//METHOD FOR DESERIALIZATION

public void deserializeAndPrint(){
    try{
      SerializableExample obj1;
      FileInputStream fis = new FileInputStream("testSer.ser");
      ObjectInputStream ois = new ObjectInputStream(fis);
      obj1 = (SerializableExample) ois.readObject();
      ois.close();
      obj1.mapValues();
      }
      catch(Exception e){
        e.printStackTrace();
      }
  }

// TESTER METHODS
   public static void main(String[] args) {
    SerializableExample obj=new SerializableExample();    
    obj.createMap();
    System.out.println("value before serialization");
    obj.mapValues();
    obj.serializeMapClass();
    System.out.println("value after serialization");
    obj.deserializeAndPrint();
  }
 
  public  createMap(){
    map.put(1,"tree");
    map.put(2, "plant");    
  }
 
  public void mapValues(){    
    for(Entry<Integer, String> s : map.entrySet()){
      System.out.println(s.getValue());
    }
  }  

}
 

Was it useful?

Search the Web

Custom Search

Searches whole web. Use the search in the right sidebar to search only within javajee.com!!!